1

私はPythonで日時をかなり新しく、Python2.7.3を使用しています

Pythonコンソールの場合:

>>>import datetime
>>>datetime.datetime.strptime("2012-3-12 10:10:10", "%Y-%m-%j %H:%M:%S")

結果が続くのはなぜですか?

datetime.datetime(2012, 1, 12, 10, 10, 10)

それよりも

datetime.datetime(2012, 3, 12, 10, 10, 10)
4

2 に答える 2

3

なぜなら、%jこれは「年の日」であり、したがって、日時を台無しにするからです。それは、車のハンドルを同時に両方向に回そうとするようなものです-それはうまくいきません...

%d代わりに必要なもの:

>>> datetime.datetime.strptime("2012-03-12 10:10:10", "%Y-%m-%d %H:%M:%S")
datetime.datetime(2012, 3, 12, 10, 10, 10)
于 2012-12-24T12:01:03.617 に答える
1

それ%jはあなたのフォーマットで、ドキュメントから:

10進数としての年の日[001,366]。

そしてその年の12日目は1月12日です。

%d代わりに使用してください:

>>> datetime.datetime.strptime("2012-03-12 10:10:10", "%Y-%m-%d %H:%M:%S")
datetime.datetime(2012, 3, 12, 10, 10, 10)
于 2012-12-24T12:01:14.143 に答える