加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 将朱利安日转换为日期

发布时间:2020-12-20 12:37:49 所属栏目:Python 来源:网络整理
导读:我有几年的文件名为day00000.nc,day00001.nc,day00002.nc,… day00364.nc. 它们代表365或366天. 我想重命名我的文件,如day20070101.nc,day20070102.nc,… day20071231.nc 我怎样才能做到这一点 ? 谢谢 解决方法 使用 datetime模块从一年中的某一天获取日期.
我有几年的文件名为day00000.nc,day00001.nc,day00002.nc,… day00364.nc.
它们代表365或366天.
我想重命名我的文件,如day20070101.nc,day20070102.nc,… day20071231.nc
我怎样才能做到这一点 ?
谢谢

解决方法

使用 datetime模块从一年中的某一天获取日期.我假设你的例子中的年份是2007年,因为你的文件名似乎没有年份值.如果需要,可以随意使用变量替换代码中的硬编码2007.

import datetime
oldFilename = 'day00364.nc'
day = int(oldFilename[3:-3])
date = datetime.datetime(2007,1,1) + datetime.timedelta(day) #This assumes that the year is 2007
newFilename = 'day%s.nc'%date.strftime('%Y%m%d')
print newFilename # prints day20071231.nc

对于那些低估这个答案的人,因为“这个解决方案增加了一天”

OP的文件编号为0到364,而不是1到365.此解决方案适用于OP.如果您的日期是1到365,并且对您来说并不是很明显,请在将其转换为timedelta值之前,自由地从日变量中减去“1”.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读