0

このような質問への回答は役に立ちましたが、私の問題には完全ではありません。 ユーザーが自動的に日付を作成するフォームがあります。それを日時として保存したいと思います。

秒以降の情報は必要ありませんが、残りのものを変換するためのdatetime.datetime.strptimeコードが見つかりません。そのため、Google App Engineのpython2.7で機能するstrptimeコード、または不要な余分な情報を削除するための文字列編集のトリックが必要です。

date-from-user = '2012-09-22 07:36:36.333373-05:00'

4

2 に答える 2

1

文字列をスライスして、最初の19文字のみを選択できます。

>>> datefromuser='2012-09-22 07:36:36.333373-05:00'
>>> datefromuser[:19]
'2012-09-22 07:36:36'

これにより、マイクロ秒やタイムゾーンを気にすることなく日付を解析できます。

ただし、おそらくタイムゾーンも解析する必要あることに注意してください。iso8601モジュールを使用して、スライスする必要なしにフォーマット全体を処理できます。

>>> import iso8601
>>> iso8601.parse_date(datefromuser)
datetime.datetime(2012, 9, 22, 7, 36, 36, 333373, tzinfo=<FixedOffset '-05:00'>)

モジュールは純粋なPythonで記述されており、iso8601GoogleAppEngineで問題なく動作します。

于 2012-09-22T16:55:55.200 に答える
1

PythonDocsから始めるのが良いでしょう。strptime()が最良のオプションです。

import datetime

datefromuser = '2012-09-22 07:36:36.333373-05:00'
datetime.datetime.strptime(datefromuser.split(".")[0], "%Y-%m-%d %H:%M:%S")

2012-09-22 07:36:36

http://docs.python.org/library/datetime.html#strftime-and-strptime-behavior

于 2012-09-22T16:46:24.300 に答える