我有以下工作代码:
import datetime
d = "2012-12-19"
f = map(int, d.split('-') )
day = datetime.date( f[0], f[1], f[2] )
print day
但是当我尝试这样写的时候:
day = datetime.date( f )
我得到一个异常:类型错误:需要一个整数
为什么会这样,我怎样才能写得更好?
最佳答案
最好是使用 datetime.strptime()
方法:
datetime.datetime.strptime(d, '%Y-%m-%d').date()
演示:
>>> import datetime
>>> d = "2012-12-19"
>>> datetime.datetime.strptime(d, '%Y-%m-%d').date()
datetime.date(2012, 12, 19)
您没有传递 f[0]
等。但是,如果您这样做了,您的方法会起作用,或者:
datetime.date(*f)
关于python - 将 2012-12-19 字符串转换为 Python 中的日期时间对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13953544/