我想转换 2010-03-01至733832
我刚刚找到了这个基本代码
d=datetime.date(year=2010, month=3, day=1)
d.toordinal()
来自this
但我想要更像
的东西d=datetime.date('2010-03-01')
d.toordinal()
提前致谢
答案 0 :(得分:4)
您需要在日期字符串上使用strptime
,指定格式,然后您可以调用toordinal
对象的date
方法:
>>> from datetime import datetime as dt
>>> d = dt.strptime('2010-03-01', '%Y-%m-%d').date()
>>> d
datetime.date(2010, 3, 1)
>>> d.toordinal()
733832
在这种情况下对date
方法的调用是多余的,并且仅用于使对象与date
对象而不是datetime
对象保持一致。
如果您希望处理更多日期字符串格式,Python's strftime directives是您想要查看的一个很好的参考。
答案 1 :(得分:4)
datetime.strptime("2016-01-01", "%Y-%m-%d").toordinal()
答案 2 :(得分:2)
您需要先使用strptime()
将时间字符串转换为public void UpdateRepack(RepackRequest repack)
{
// Do needed operations
// Remove this line. You are supposed to save changes in the end using _uow.Save(); -> _context.Save();
}
对象。然后在datetime
对象
.toordinal()
datetime
创建一个实现此目的的函数更好:
>>> from datetime import datetime
>>> date = datetime.strptime('2010-03-01', '%Y-%M-%d')
>>> date.toordinal()
733773