導入: この記事では、Python の文字列からの日付の解析について説明します。 Python で文字列を日時に変換するには、strptime() メソッドを使用します。 strptime() は、日付/時刻の文字列表現を datetime オブジェクトに変換するために使用される datetime クラスの組み込みメソッドです。
文字列Pythonから日付を解析する構文: 文字列Pythonから解析された日付の構文は以下のとおりです。
datetime.strptime(date_string, format)
datetime - クラス名です。
strptime - メソッド名です。
date_string - 日付の文字列表現です。
形式 - 日付オブジェクトの指定された形式です。
文字列Pythonから解析された日付のパラメータ: 文字列 Python から解析された日付のパラメーターは、必須の引数と文字列の両方を受け入れる strptime() 関数です。 strptime() 関数は、日時オブジェクトを文字列に変換する strftime() 関数の正反対です。
方法: Python で指定された文字列を DateTime に変換する Python アプリケーションを作成します。このテキストで説明できる方法は以下のとおりです。
- 日時モジュールの使用
- タイムモジュールの使用
- dateutil モジュールの使用
1.日時モジュールの使用: このために、datetime.strptime() 関数を使用します。 strptime() は DateTime モジュールと Time モジュールで使用でき、日時の変換に使用されます。この関数は、指定された文字列を日時から目的の形式に変更します。日付時刻。 strptime() は、文字列を日時に解析する一般的な方法です。指定されたフォーマット文字列で定義された任意のフォーマットを処理できます。
例 1: ここでは、Python の datetime モジュールの例を示します。例を以下に示します。
import datetime def convert(date_time): format = '%b %d %Y %I:%M%p' datetime_str = datetime.datetime.strptime(date_time, format) return datetime_str date_time = 'Dec 7 2022 10:46AM' print(convert(date_time))
出力: ここで、上記のプログラムをコンパイルし、コンパイル後に上記のプログラムを実行します。結果は以下のようになります -
2022-12-07 10:46:00
例 2: ここでは、Python の datetime モジュールの例を示します。例を以下に示します。
import datetime date_str = '07/12/2022' format_str = '%d/%m/%Y' datetime_obj = datetime.datetime.strptime(date_str, format_str) print(datetime_obj.date())
出力: ここで、上記のプログラムをコンパイルし、コンパイル後に上記のプログラムを実行します。結果は以下のようになります -
2022-12-07
例 3: ここでは、Python の datetime モジュールの例を示します。例を以下に示します。
from datetime import datetime my_date_string = 'May 05 2000 11:07PM' datetime_object = datetime.strptime(my_date_string, '%b %d %Y %I:%M%p') print(type(datetime_object)) print(datetime_object)
出力: ここで、上記のプログラムをコンパイルし、コンパイル後に上記のプログラムを実行します。結果は以下のようになります -
2000-05-05 23:07:00
strptime() を使用して、文字列形式の日付と時刻を datetime 型に変換できます。最初のパラメータは文字列で、2 番目のパラメータは日付と時刻の形式指定子です。日付形式に変換する利点は、月、日付、または時刻を個別に選択できることです。ディレクティブと strptime() の詳細については、「Python strptime() - 文字列から日時オブジェクトへ」を参照してください。
2. 時間モジュールの使用: Python 関数 strftime() は datetime モジュールと time モジュールにあり、指定された形式文字列に基づいて文字列表現を構築します。
例 1: ここでは、Python の time モジュールの例を示します。例を以下に示します。
import time def convert(datetime_str): datetime_str = time.mktime(datetime_str) format = '%b %d %Y %r' # The format dateTime = time.strftime(format, time.gmtime(datetime_str)) return dateTime date_time = (2000, 5, 5, 10, 7, 00, 1, 48, 0) print(convert(date_time))
出力: ここで、上記のプログラムをコンパイルし、コンパイル後に上記のプログラムを実行します。結果は以下のようになります -
May 05 2000 04:37:00 AM
3. dateutil モジュールの使用: dateutil はサードパーティのモジュールです。 dateutil モジュールは、任意の文字列形式での日付の解析をサポートします。このモジュールは、現在の世界のタイムゾーンに関する内部情報を提供します。最近、パーサー関数を備え、Python 3 に適合した dateutil 2.0 がリリースされました。parse() を使用して文字列を日時形式に変換できます。使用される唯一のパラメータは文字列です。
例 1: ここでは、Python の dateutil モジュールの例を示します。例を以下に示します。
from dateutil import parser date_time = parser.parse('May 05 2000 07:59PM') print(date_time) print(type(date_time))
出力: ここで、上記のプログラムをコンパイルし、コンパイル後に上記のプログラムを実行します。結果は以下のようになります -
2000-05-05 19:59:00