ホームページ >バックエンド開発 >Python チュートリアル >ISO 8601 文字列を Python 日時オブジェクトに効率的に解析するにはどうすればよいですか?
ISO 8601 文字列を Python 日時オブジェクトに解析する方法
ISO 8601 は、日付と時刻を表すために広く使用されている標準です。データ交換や Web サービスでよく使用されます。ただし、ISO 8601 文字列を Python 日時オブジェクトに解析するのは少し難しい場合があります。
ハック的なアプローチ
一般的なアプローチの 1 つは、time.strptime() 関数を使用することです。文字列を解析します。ただし、このアプローチは退屈でエラーが発生しやすい可能性があります。以下に例を示します。
datetime.datetime(*time.strptime("2009-05-28T16:15:00", "%Y-%m-%dT%H:%M:%S")[:6])
よりクリーンなソリューション
幸いなことに、ISO 8601 文字列を解析するより洗練された方法があります。 dateutil ライブラリには、parser.parse() という便利な関数が用意されています。
from dateutil import parser yourdate = parser.parse("2009-05-28T16:15:00")
この関数は、タイムゾーンを含む文字列を含む、幅広い ISO 8601 形式を処理できます。
例使用法
parser.parse() の使用方法の例をいくつか示します。 function:
# Parse a basic ISO 8601 string dateutil.parser.parse("2009-05-28T16:15:00Z") # Parse a string with a timezone offset dateutil.parser.parse("2009-05-28T16:15:00-05:00") # Parse a string with a fractional second dateutil.parser.parse("2009-05-28T16:15:00.123Z")
parser.parse() 関数は、Python コードで使用できる日時オブジェクトを返します。
以上がISO 8601 文字列を Python 日時オブジェクトに効率的に解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。