5

我想将变量定义为表示用户输入的天数的日期时间对象。例如。

numDays = #input from user
deltaDatetime = #this is what I'm trying to figure out how to do
str(datetime.datetime.now() + deltaDatetime)

如果用户输入 3 作为输入,此代码将打印出表示从今天起 3 天的日期时间。知道怎么做吗?对于解决这个问题的有效方法,我完全迷失了。

编辑:由于我的系统是如何设置的,存储“deltaDatetime”值的变量必须是日期时间值。正如我在评论中所说,像 3 天这样的时间变成了第 0 年,1 月 3 日。

4

3 回答 3

10

使用标准日期时间库中的 timedelta 相当简单:

import datetime
numDays = 5   # heh, removed the 'var' in front of this (braincramp)
print datetime.datetime.now() + datetime.timedelta(days=numDays)
于 2013-07-17T19:46:16.457 回答
4

使用timedelta

from datetime import datetime, timedelta

days = int(raw_input())
print datetime.now() + timedelta(days=days)
于 2013-07-17T19:46:43.160 回答
3
deltaDateTime = datetime.timedelta(days=3)
于 2013-07-17T19:46:15.293 回答