python3 strftime输出因平台而异

时间:2016-08-12 18:23:59

标签: python python-3.x strftime

Python3 strftime生成的结果因平台而异。例如:

OS X 10.10.5

>>> sys.version
'3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25) \n[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]'
>>> datetime.datetime(1, 1, 1, 0, 0).strftime('%Y/%m/%d')
'0001/01/01'

Debian 8.5

>>> sys.version
'3.5.2 (default, Aug 12 2016, 16:05:15) \n[GCC 4.9.2]'
>>> datetime.datetime(1, 1, 1, 0, 0).strftime('%Y/%m/%d')
'1/01/01'

这是预期的行为吗?为什么呢?

1 个答案:

答案 0 :(得分:2)

npm只是您正在使用的strftime库中定义的strftime函数的精简包装。查看相关的错误' here。这种行为似乎就是另一种情况。

输出之间的差异与Python无关,因为Python只会传递参数并接收输出。由于不同平台具有C stdlib的不同实现,因此在某些边缘情况下会得到不同的结果。