1

変数に日時が含まれているかどうか、および日付、時間、分、および秒のみを含むようにフォーマットされているかどうかを確認するにはどうすればよいですか。ミリ秒ではありません。

私が抱えている問題は、変数がテキストまたは日時のいずれかを含むことができるため、日時形式ではないことです。

return isinstance(new_value, datetime.datetime)

したがって、上記のコマンドを実行すると false が返されます。

new_value に 2016-05-24 09:26:51.754000+00:00 が含まれている場合、次のようにフォーマットするにはどうすればよいですか: 2016-05-24 09:26:51

4

1 に答える 1

0

最初に、日付文字列を日時オブジェクトに変換する必要があります。この方法で「isinstance()」で確認できますが、私が思うに、より良い解決策を提案したいと思います:)、Python 2.7ではまだ人気があるからです、日付文字列を日時オブジェクトに変換するときにタイムゾーンオフセット( %z )に問題があるため、「strptime」を使用しない私のソリューションは次のとおりです。

from dateutil import parser
date = '2016-05-24 09:26:51.754000+00:00'
try:
    # something if format correct
    parsed_date = parser.parse(date)
    # formatting
    print parsed_date.strftime("%Y-%m-%d %H:%M:%S")
except ValueError:
    # something if format incorrect
    print 'Wrong date format'

もちろん、書くことを忘れないでください:

$pip install python-dateutil
于 2016-06-06T09:40:09.837 に答える