logo

Python エポックから日時まで

次のチュートリアルでは、エポックから DateTime への変換を理解します。 Python プログラミング言語 いくつかの例を使用して説明します。エポックをそれぞれ日付と時刻に変換するために、Python エポックを使用します。次のトピックについても説明します。

Javaで文字列を比較する
  1. DateTime をエポックタイムに変換する
  2. エポックを DateTime 文字列に変換する
  3. エポックを DateTime ミリ秒に変換する
  4. エポックを DateTime タイムゾーンに変換する
  5. Unix エポックを DateTime に変換する
  6. DateTime をミリ秒単位のエポック時間に変換する
  7. エポックタイムスタンプをDateTimeに変換する
  8. Python エポック DateTime 年が範囲外です

しかし、始める前に、Python のエポックタイムについて簡単に理解しましょう。

Python のエポックタイムとは何ですか?

Unix 時間または POSIX 時間とも呼ばれるエポック時間は、Unix 時代 (協定世界時での 1970 年 1 月 1 日の午後 12 時) から経過したさまざまな秒数を追跡するためのフレームワークです。このフレームワークは、フレームワークやプログラミング言語を考える際に広く利用されています。 、Pythonを含む。

Python では、時間関連の値を制御する機能を提供する time モジュールを利用して経過時間を操作できます。経過時間を管理するための重要な機能の 1 つは time.time() です。これは、経過時間以降の経過時間を秒単位でドリフト ポイント数として返します。

Python を使用してエポック時間を DateTime に変換する

Pythonを使用できます datetime.fromtimestamp() エポックタイムをDateTimeに変換するための関数。 Python エポックから DateTime への変換を示す次の例を考えてみましょう。

例:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 40246871 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

出力:

 Given epoch time: 40246871 Converted Datetime: 1971-04-12 01:11:11 

説明:

上記の例では、日付と時刻の値の制御を考慮して、datetime モジュールがインポートされます。次に、変数 epoch_time に 40246871 という特定の値が割り当てられ、Unix 時代 (1970 年 1 月 1 日、00:00:00 UTC) からの秒単位のずれに対応します。

このコンテンツの中心的な有用性は、datetime.fromtimestamp() 機能の使用にあります。この機能にはある程度の投資 (epoch_time) が必要ですが、datetime オブジェクトを作成することで、よりわかりやすい構成に変更します。同じ日付と時刻をアドレス指定する後続の datetime オブジェクトは、変数 date_time に保管されます。

変更を認識できるようにするために、コンテンツには 2 つの print() 宣言が組み込まれています。最初の print('Given age time:', epoch_time) は最初の経過時間評価を示し、後続の print('Converted Datetime:', date_time) は変更された datetime 値を生成します。

Python を使用して DateTime をエポック時間に変換する

DateTime をエポックタイムに変換するには、 タイムスタンプ() 関数。まず、DateTime からエポック時間への変換を示す次の例を考えてみましょう。

例:

 # Here, we are importing the datetime package import datetime # Here, we are using the timestamp() function to convert datetime into epoch time epoch_time = datetime.datetime(2021, 6, 9, 2, 0).timestamp() # Here, we are printing the values print('Converted epoch time:', epoch_time) 

出力:

 Converted epoch time: 1623184200.0 

説明:

上記の例では、日付と時刻に関連するアクティビティを処理するために datetime モジュールがインポートされます。このコンテンツは、timestamp() 機能を使用して、特定の日時から経過時間への変更を示します。

インタラクションは、2021 年 6 月 9 日の午前 2 時にアドレス指定する日時オブジェクトを作成することで始まります。この datetime オブジェクトは競合として timestamp() 機能に渡され、同じ経過時間 (Unix 経過時間、1970 年 1 月 1 日、00:00:00 UTC から経過した秒数) を返します。その後の経過時間は変数 epoch_time に保存されます。

コンテンツは、print() 宣言: print('Converted age time:', epoch_time) で終了します。これにより、事前定義された日時に対する決定された経過時間が得られます。 Python を使用したエポック時刻の DateTime 文字列への変換 エポック時刻を datetime 文字列に変換するには、エポック時刻を datetime に変換し、結果の datetime 変数を strftime() 関数に渡して datetime 文字列に正常に変換する必要があります。

例:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 700024 # Here, we are using datetime.fromtimestamp() function to convert epoch time into datetime object mytimestamp = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using strftime() function to convert datetime_str = mytimestamp.strftime( '%Y - %m - %d %H : %M : %S') # Here, we are printing the values print('Given epoch time:', epoch_time) print('Converted datetime string:', datetime_str) 

出力:

 Given epoch time: 700024 Converted datetime string: 1970 - 01 - 09 07 : 57 : 04 

説明:

上の例では、再度インポートしました。 日付時刻 図書館。次に使用したのは、 datetime.fromtimestamp() 関数を使用して、指定されたエポック時刻を日時に変換し、それを strftime() 日時オブジェクトを日時文字列に変換する関数。の strftime() 関数パラメータは、文字列をカスタマイズするフォーマット コードです。

    %そして年を指定します%m月を指定します%d日を指定します%H時間を指定します%M分を指定します%S秒を指定します

Python を使用してエポック時間を DateTime ミリ秒に変換する

エポックタイムを DateTime に変換するために行ったメソッドを使用して、エポックタイムからミリ秒とともに DateTime を取得できます。同じことを示す次の例を考えてみましょう。

例:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 402471.238201 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

出力:

 Given epoch time: 402471.238201 Converted Datetime: 1970-01-05 21:17:51.238201 

説明:

上記の例では、日付と時刻に関連するアクティビティを処理するために datetime モジュールがインポートされています。コンテンツの基本的な役割は、402471.238201 秒として決定される特定の経過時間にわたって、日時オブジェクトと編成された文字列の両方を利用したわかりやすい構成に変更することです。

コンテンツは datetime.fromtimestamp() 機能を利用して、経過時間を datetime オブジェクトに変更します。変数 date_time に格納された後続の datetime オブジェクトは、日付と時刻の比較の微妙な例を示しています。最後に、コンテンツは最初の経過時間と変更された日時オブジェクトの両方を出力します。

これらの print() 宣言は、大まかな経過時間と編成された datetime オブジェクトの両方を示す結果を生成し、最初のタイムスタンプとその人間が対応できるタイムスタンプを合理的に描写します。

Python を使用してエポック時間を DateTime タイムゾーンに変換する

使用できます タイムゾーン() の機能 ピッツ エポックタイムを DateTime タイムゾーンに変換するためにパッケージを使用します。同じ変換を示す次の例を考えてみましょう。

例:

 # Here, we are importing the required package(s) and module(s) from datetime import datetime import pytz # Here, we are using the timezone() function my_timezone = pytz.timezone('CST6CDT') # Here, we are using the localize() function date_timezone = my_timezone.localize( datetime( 2021, 6, 10, 9, 34, 32 ), is_dst = None ) # Here, we are printing the values print( 'DateTime Time zone:', date_timezone ) 

出力:

 DateTime Time zone: 2021-06-10 09:34:32-05:00 

説明:

上記の例では、datetime モジュールが pytz モジュールとともに使用され、特定の時間領域の日付と時刻のオブジェクトを操作します。コンテンツの本質的な目的は、datetime オブジェクトを作成し、そのタイム ゾーンの時点を「CST6CDT」(太陽光節約時間付き標準標準時) に明示的に記述し、その時点で後続の日付と時刻を出力することです。

このように、pytz モジュールの timezone() 機能を利用して、「CST6CDT」をアドレス指定する時間領域オブジェクトを作成します。次に、時間領域オブジェクトの replace() 機能を使用して、特定の datetime オブジェクトのタイムゾーンの時点を確立します (2021 年 6 月 10 日、9:34:32)

is_dst=None 境界は、ライトセービングタイム (DST) データが明確に与えられていないことを示し、restrict() 機能が所定の時間を考慮して適切な DST ステータスを決定できるようにします。最後に、コンテンツは、明示的に設定された時間領域を使用して後続の datetime オブジェクトを出力します。

Python を使用して Unix エポック時刻を DateTime に変換する

Unix エポック時刻を DateTime に変換するこのプロセスは、以前に行ったものと似ています。このプロセスには、 datetime.fromtimestamp() Unix エポック時刻を DateTime オブジェクトに変換する関数であり、 strftime() オブジェクトを適切な DateTime 形式に変換する関数。

同じことを示す次の例を考えてみましょう。

例:

 # Here, we are importing the datetime library import datetime # Here, we have defined a constant value for the epoch time epoch_time = 252384207 # Here, we are using the datetime.fromtimestamp() function datetime_obj = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using the strftime() function datetime_str = datetime_obj.strftime( '%Y - %m - %d %H : %M : %S' ) # Here, we are printing the values print( 'Unix epoch time:', epoch_time ) print( 'DateTime:', datetime_str ) 

出力:

 Unix epoch time: 252384207 DateTime: 1977 - 12 - 31 08 : 13 : 27 

説明:

上記の例では、datetime モジュールを使用して、252384207 秒として示される特定の経過時間にわたって、よりわかりやすい構成に変更します。本質的な目的は、経過時間から日時オブジェクトを作成し、その後それを表示用の文字列としてデザインすることです。コンテンツは、datetime モジュールを取り込むことから始まります。次に、 datetime.fromtimestamp() 機能を使用して、経過時間を datetime オブジェクトに変更します。

変数 datetime_obj に格納された後続の datetime オブジェクトは、関連する日付と時刻の微妙な点を表します。次に、strftime() 機能を利用して、datetime オブジェクトを特定の構成の文字列として設計します。この状況の場合、示される構成は「%Y - %m - %d %H : %M : %S」で、年、月、日、時、瞬間、秒を指定します。

ついに、コンテンツは最初の Unix 経過時間と整理された日時文字列の両方を出力します。これらの print() 宣言は、大まかな経過時間と整理された日時文字列の両方を表示する生成物を作成し、最初のタイムスタンプとその人間が対応できるタイムスタンプの紛れもない描写を与えます。

Python を使用して DateTime をミリ秒単位のエポック時間に変換する

エポックの DateTime をミリ秒に変換するには、 strptime() 指定された文字列から日時オブジェクトを返し、 タイムスタンプ() オブジェクトを秒に変換する関数。さらに、ミリ秒単位のエポック DateTime を生成するには、結果の値に 1,000 を乗算する必要があります。

同じことを示す例を考えてみましょう。

月に何週間

例:

 # Here, we are importing the datetime module from datetime import datetime # Here, we are using the strptime() function dt_obj = datetime.strptime( '10-6-2021 10:33:35,72', '%d-%m-%Y %H:%M:%S,%f') epoch_msec = dt_obj.timestamp() * 1000 print('epoch time in milliseconds:', epoch_msec) 

出力:

 epoch time in milliseconds: 1623301415720.0 

説明:

上記の例では、datetime モジュールを使用して、特定の日付と時刻をアドレス指定する設計された文字列を、ミリ秒単位で推定される経過時間評価に変更します。このサイクルは、指定されたデザイン '%d-%m-%Y %H を考慮して情報文字列 '10-6-2021 10:33:35,72' を解析する strptime() 機能の利用から始まります。 %M:%S,%f'。この構成は、情報文字列の日、月、年、時、瞬間、秒、およびマイクロ秒の部分を示します。

変数 dt_obj に格納された後続の datetime オブジェクトは、解析された日付と時刻のデータを表します。このように、コンテンツは datetime オブジェクトの timestamp() 戦略を利用して経過時間を確認し、Unix の経過時間 (1970 年 1 月 1 日、00:00:00 UTC) から経過した秒数を指定します。この値を 1000 単位でミリ秒に増やすと、時間のより詳細な描写が可能になります。

最後に、コンテンツは print() アーティキュレーションを利用して、決定された経過時間をミリ秒単位で出力します。

Pythonを使用してエポックタイムスタンプをDateTimeに変換する

使用できます datetime.fromtimestamp() エポックタイムスタンプをDateTimeに変換する関数。以下に例を示します。

例:

 # Here, we are importing the datetime module import datetime # Here, we have defined a constant value for epoch timestamp epoch_time = 33456871 # Here, we are using the datetime.fromtimestamp() function the_datetime = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the values print( 'epoch timestamp:', epoch_time ) print( 'DateTime:', the_datetime ) 

出力:

 epoch timestamp: 33456871 DateTime: 1971-01-23 11:04:31 

説明:

上記の例では、datetime モジュールを使用して、33456871 秒としてアドレス指定された特定の経過時間タイムスタンプを、より合理的でわかりやすい構成に変更します。コンテンツは、datetime モジュールを導入することから始まり、日付と時刻を操作するためのさまざまな機能を許可します。

Unix の時代 (1970 年 1 月 1 日、00:00:00 UTC) から経過した秒数を示す経過時間のタイムスタンプは、コンテンツ内の変数 epoch_time に割り当てられます。したがって、datetime.fromtimestamp() 機能を使用して、この経過時間タイムスタンプを the_datetime という名前の datetime オブジェクトに変更します。

コンテンツは、print() アーティキュレーションを利用して、最初の経過時間のタイムスタンプと編成された datetime オブジェクトの両方を出力することで終了します。

Python のエポック日時に関するエラーを理解する

Python プログラミング言語でエポック日時を操作しているときに、「Python エポック日時年が範囲外である」または「Python の引数が無効です」というエラーが発生する場合があります。

問題を理解するために例を考えてみましょう。

例:

 # Here, we are importing the datetime module import datetime # Here, we are using the timestamp() function epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() # Here, we are printing the values print( epoch_time ) 

出力:

 Traceback (most recent call last): File 'D:Pythonepochpython.py', line 5, in epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() OSError: [Errno 22] Invalid argument 

説明:

上記の例では、datetime モジュールを使用して、timestamp() 機能を使用して、特定の datetime (この状況では「1960-06-10 00:00:00」) を経過時間に変更します。コンテンツは、datetime モジュールを取り込むことから始まり、日付と時刻のタスクに関連する機能への許可を与えます。

このコンテンツの中心的な有用性は、timestamp() 機能の使用にあります。この機能は、1960 年 6 月 10 日午後 12 時にアドレス指定される datetime オブジェクトに適用されます。この機能は、Unix の経過時間 (1970 年 1 月 1 日、00:00:00 UTC) から所定の日時までに経過した秒数を指定して、経過時間を計算して返します。

次に、print() 宣言を利用して結果が出力され、「- 306691200.0」のように見える結果が作成されます。