我有一些python代码给了我一些我真的不明白的东西。这是我的一些代码。
fe=datetime.strptime(b, "%m/%d/%Y").strftime("%d/%m/%Y")
fecha=dateutil.parser.parse(fe).timestamp()
其中b
是美国/英国格式的字符串,其中包含04/19/2017
之前的月份,第一行返回与10/04/2017
相同的日期,然后是第二行代码返回一个数字。
我完全不理解为什么10 th 的日期大于19 th 的日期。对于第10天,我得到1507068000.0
,而对于第19天,我得到1492552800.0
。
我错过了什么吗?我认为这是一个转换,所以最近的日期比旧的日期更大。
答案 0 :(得分:1)
parse
的默认值为dayfirst=False
。如果您设置dayfirst=True
,那么时间戳将被正确排序。
>>> parse('19/04/2017').timestamp()
1492574400.0
>>> parse('10/04/2017').timestamp()
1507089600.0
>>> parse('19/04/2017', dayfirst=True).timestamp()
1492574400.0
>>> parse('10/04/2017', dayfirst=True).timestamp()
1491796800.0