2013-03-22 17 views
1

我想從用戶那裏得到輸入日期,並將其存儲在使用datetime.datetime

dt_start = dt.datetime(2006, 1, 1) 

形式我目前做這四處輸入日期從用戶的Python:

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 

感謝您的幫助傢伙!

+1

你期待用戶輸入 「2006年,1,1」 作爲一個字符串? – 2013-03-22 23:53:58

+0

使用解決方案表單@A.Rodas後,出現以下錯誤: – 2013-03-23 14:02:40

+0

in dt_start = dt.strptime(i,'%Y,%m,%d') AttributeError:'module'object has no attribute' strptime' – 2013-03-23 14:03:06

回答

8

如果您使用的是%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" 
0

日期時間()只需要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) 
相關問題