使用datetime.datetime从python中获取用户的输入日期

时间:2013-03-22 23:51:25

标签: python date datetime python-2.7

我正在尝试从用户那里获取输入日期并以

的形式存储
dt_start = dt.datetime(2006, 1, 1)

我目前正在这样做:

i = str(raw_input('date'))
dt_start = dt.datetime(i)

但它引发了一个错误:

Traceback (most recent call last):
File "C:/.../sim.py", line 18, in <module>
    dt_start = dt.datetime(i)
TypeError: an integer is required

感谢帮助人员!

2 个答案:

答案 0 :(得分:9)

如果您使用的是%Y, %m, %d格式,则可以尝试使用datetime.strptime

from datetime import datetime

i = str(raw_input('date'))
try:
    dt_start = datetime.strptime(i, '%Y, %m, %d')
except ValueError:
    print "Incorrect format"

答案 1 :(得分:1)

datetime()只将int作为参数。

试试这个:

from datetime import datetime

date_entry = input('Enter a date (i.e. 2017,7,1)')
year, month, day = map(int, date_entry.split(','))
date = datetime(year, month, day)