如何增加日期时间的日期?
for i in range(1, 35)
date = datetime.datetime(2003, 8, i)
print(date)
但我需要正确地度过几个月和几年?什么好主意吗?
如何增加日期时间的日期?
for i in range(1, 35)
date = datetime.datetime(2003, 8, i)
print(date)
但我需要正确地度过几个月和几年?什么好主意吗?
当前回答
最简单的解决方案
from datetime import timedelta, datetime
date = datetime(2003,8,1,12,4,5)
for i in range(5):
date += timedelta(days=1)
print(date)
其他回答
一个完全没有库的简单解决方案。:)
d = "8/16/18"
day_value = d[(d.find('/')+1):d.find('/18')]
tomorrow = f"{d[0:d.find('/')]}/{int(day_value)+1}{d[d.find('/18'):len(d)]}".format()
print(tomorrow)
# 8/17/18
确保“字符串d”实际上是%m/%d/%Y的形式,这样就不会出现从一个月过渡到下一个月的问题。
date = datetime.datetime(2003,8,1,12,4,5)
for i in range(5):
date += datetime.timedelta(days=1)
print(date)
最简单的解决方案
from datetime import timedelta, datetime
date = datetime(2003,8,1,12,4,5)
for i in range(5):
date += timedelta(days=1)
print(date)
下面是另一个使用dateutil的relativedelta在日期上添加天数的方法。
from datetime import datetime
from dateutil.relativedelta import relativedelta
print 'Today: ',datetime.now().strftime('%d/%m/%Y %H:%M:%S')
date_after_month = datetime.now()+ relativedelta(day=1)
print 'After a Days:', date_after_month.strftime('%d/%m/%Y %H:%M:%S')
输出:
今天:25/06/2015 20:41:44 日期:01/06/2015 20:41:44
您还可以导入timedelta,这样代码就更简洁了。
from datetime import datetime, timedelta
date = datetime.now() + timedelta(seconds=[delta_value])
然后将日期转换为字符串
date = date.strftime('%Y-%m-%d %H:%M:%S')
Python一行是
date = (datetime.now() + timedelta(seconds=[delta_value])).strftime('%Y-%m-%d %H:%M:%S')