日付と時刻の操作はプログラミングにおける一般的なタスクであり、Python は日付と時刻に関連した操作を処理する強力な datetime モジュールを提供します。
この記事では、Python を使用して、「yyyy-mm-dd」形式の文字列 (yyyy-mm-dd は年-月-日を表します) を DateTime オブジェクトに変換します。
例:
Input: '2023-07-25' Output: 2023-07-25 11:30:00 Explanation: In This, we are converting the string 'yyyy-mm-dd' to Datetime format in Python.>
注記 : yyyy-mm-dd、dd/mm/yyyy などの文字列形式で日付を記述する方法は複数あります。これらの方法を使用して、任意の文字列日付形式を DateTime 形式に変更できます。
Python で文字列を DateTime に変換するには?
さまざまなアプローチと方法を使用して、文字列を DateTime に変換できます。要件に基づいて適切な方法を選択し、無効な日付文字列を適切に処理して、確実に実行されるようにします。 パイソン プログラム。以下でそれぞれの方法を見てみましょう。
- strptime() の使用
- 使用する dateutil.parser.parse()
- 使用する datetime.strptime()
strptime() を使用して文字列日付を DateTime に変換する
を使用して文字列日付を DataTime オブジェクトに変換できます。 strptime() 関数 から 日時モジュール Input() を使用します。 「%Y/%m/%d」形式を使用して文字列を DateTime に取得します。
例:
Python3
import> datetime> # datetime in string format for may 25 1999> input> => '2021/05/25'> format> => '%Y/%m/%d'> # convert from string format to datetime format> datetime> => datetime.datetime.strptime(> input> ,> format> )> # get the date from the datetime using date()> # function> print> (datetime.date())> |
>
>
出力:
2021-05-25>
Python で文字列を DateTime オブジェクトに変換するには dateutil.parser.parse()
dateutil ライブラリの dateutil.parser.parse() 関数を使用して、文字列の日付を DateTime 形式に変換できます。これにより、日付文字列の解析と変換に対するより柔軟なアプローチが提供されます。
Python3
最高のエロアニメ
from> dateutil.parser> import> parse> def> convert_to_datetime(input_str, parserinfo> => None> ):> > return> parse(input_str, parserinfo> => parserinfo)> # Example usage> date_string> => '2023-07-25'> result_datetime> => convert_to_datetime(date_string)> print> (result_datetime)> |
>
>
出力:
2023-07-25 00:00:00>
続きを読む: dateutil を使用して日付を解析します。
を使用して文字列日付のリストを DateTime に変換します datetime.strptime()
次を使用して、文字列日付のリストを DateTime オブジェクトに変換できます。 datetime.strptime() 。 Python の datetime.strptime() メソッドを使用すると、指定された形式で日付文字列を解析し、datetime オブジェクトに変換できます。
Python3
# import the datetime module> import> datetime> # datetime in string format for list of dates> input> => [> '2021/05/25'> ,> '2020/05/25'> ,> '2019/02/15'> ,> '1999/02/4'> ]> # format> format> => '%Y/%m/%d'> for> i> in> input> :> > > # convert from string format to datetime format> > # and get the date> > print> (datetime.datetime.strptime(i,> format> ).date())> |
>
>
出力:
2021-05-25 2020-05-25 2019-02-15 1999-02-04>
strptime() エラーのトラブルシューティング
strptime() 入力文字列を指定された形式で解析できない場合は、ValueError が返されます。
「try and else」ブロックを試して、ValueError の考えられる解決策を見つけることができます。
例:
Python3
人工ニューラルネットワーク
from> datetime> import> datetime> # error as 2021 is not a leap year> date_string> => '2021-02-29'> date_format> => '%Y-%m-%d'> # Attempt to convert string to datetime> try> :> > date_object> => datetime.strptime(date_string, date_format)> > print> (date_object)> except> ValueError as e:> > print> (> 'Error:'> , e)> |
>
>出力
Error: day is out of range for month>
Python で文字列と日付文字列を DateTime 形式に変換するさまざまな方法について説明しました。 Python の DateTime 形式は、2 つの日付の間の日数を求めるなど、データを日付として操作する場合に非常に便利です。
日付に対して操作を実行する必要がある場合は、日付を DateTime 形式に保つことが非常に重要です。変更しない場合、インタプリタは yyyy-mm-dd を文字列として扱うため、 日時操作 その上で。
類似の記事:
- Python で文字列を DateTime に変換、またはその逆に変換する
- Datetime モジュールを使用して日付と時刻を操作する
- 文字列から Python 日時を作成する
- Python での日時オブジェクトとタイムゾーンの操作