python中datetime默认的1990年改为_Python:将’1990年以来的天数’转换为datetime对象...

日期时间模块的

timedelta可能正是您所需要的.

例如:

from datetime import date, timedelta

days = 9465 # This may work for floats in general, but using integers

# is more precise (e.g. days = int(9465.0))

start = date(1990,1,1) # This is the "days since" part

delta = timedelta(days) # Create a time delta object from the number of days

offset = start + delta # Add the specified number of days to 1990

print(offset) # >>> 2015-12-01

print(type(offset)) # >>>

然后,您可以使用和/或操纵偏移对象,或将其转换为字符串表示,但您认为合适.

您可以像使用time_datetime一样使用与此日期对象相同的格式:

print(offset.strftime('%Y-%m-%d %H:%M:%S'))

输出:

2015-12-01 00:00:00

例如,如果您稍后要向其添加小时/分钟/秒/时区偏移,则可以使用日期时间对象,而不是使用日期对象.

代码将保持与上面相同,但两行除外:

# Here, you're importing datetime instead of date

from datetime import datetime, timedelta

# Here, you're creating a datetime object instead of a date object

start = datetime(1990,1,1) # This is the "days since" part

注意:虽然您没有说明,但另一个答案表明您可能正在寻找时区感知日期时间.如果是这种情况,正如另一个答案所暗示的那样,dateutil是Python 2的发展方式.在Python 3中,您需要使用datetime模块的tzinfo.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值