Python でタイムスタンプを取得するいくつかの方法
タイムスタンプは、特定の時点 (通常は 1970 年 1 月 1 日 00:00:00 UTC) からの合計秒数を指します。Python では、さまざまな方法を使用してタイムスタンプを取得できます。この記事では、time モジュールの使用、datetime モジュールの使用、dateutil モジュールの使用という 3 つの一般的な方法を紹介します。同時に、それらの長所と短所を比較し、タイムスタンプを取得する他の方法とタイムスタンプを日付と時刻の形式に変換する方法も紹介します。
1 はじめに
1.1 タイムスタンプとは何ですか?
タイムスタンプは時間を表す方法の 1 つで、特定の時点からの秒数を表す浮動小数点数または整数です。
1.2 タイムスタンプの役割と適用シナリオ
タイムスタンプはコンピュータ分野で広く使用されており、一般的なアプリケーション シナリオは次のとおりです。
- プログラムの実行時間を計算する
- イベントが発生した時刻を記録する
- 時間の比較や並べ替えなどの操作を実行する
2. time モジュールを使用してタイムスタンプを取得します
2.1 時間モジュールの概要
time モジュールは、Python 標準ライブラリの処理時間用のモジュールであり、時間を取得および操作するためのいくつかの関数を提供します。
2.2 timeモジュールでタイムスタンプを取得する関数の紹介
time モジュールの関数を使用して、time()
現在の時刻のタイムスタンプを取得できます。
2.3 サンプル コードは、time モジュールを使用してタイムスタンプを取得する方法を示しています。
import time
timestamp = time.time()
print("当前时间戳:", timestamp)
3. datetime モジュールを使用してタイムスタンプを取得します
3.1 datetime モジュールの概要
datetime モジュールは、日付と時刻を処理するための Python 標準ライブラリのモジュールであり、日付と時刻を操作するためのいくつかのクラスと関数を提供します。
3.2 datetime モジュールでタイムスタンプを取得する関数の概要
datetime モジュールのメソッドを使用して、timestamp()
datetime オブジェクトをタイムスタンプに変換できます。
3.3 サンプル コードは、datetime モジュールを使用してタイムスタンプを取得する方法を示しています。
from datetime import datetime
now = datetime.now()
timestamp = now.timestamp()
print("当前时间戳:", timestamp)
4. dateutil モジュールを使用してタイムスタンプを取得します
4.1 dateutil モジュールの概要
dateutil モジュールは、強力な日付と時刻の処理ツールを提供するオープン ソースの Python モジュールです。
4.2 dateutil モジュールのタイムスタンプを取得する関数の概要
dateutil モジュールでは、parser.parse()
メソッドを使用して文字列を解析して datetime オブジェクトにし、timestamp()
メソッドを使用してタイムスタンプを取得できます。
4.3 サンプル コードは、dateutil モジュールを使用してタイムスタンプを取得する方法を示しています。
from dateutil import parser
date_str = "2022-01-01 12:00:00"
dt = parser.parse(date_str)
timestamp = dt.timestamp()
print("时间戳:", timestamp)
5. まとめと展開
5.1 3 つの方法の長所と短所を比較する
- 時間モジュール: シンプルで使いやすいですが、精度はわずか数秒です。
- Datetime モジュール: 精度はマイクロ秒レベルに達し、より多くの日付と時刻の処理機能も提供します。
- dateutil モジュール: より多くの日付と時刻の形式を解析できますが、追加のインストールが必要です。
5.2 タイムスタンプを取得する他の方法の紹介
上記の 3 つの方法に加えて、タイムスタンプを取得するには次のような方法があります。
calendar
module:関数を使用すると、calendar.timegm()
タイムタプルをタイムスタンプに変換できます。timeit
モジュールの使用:timeit.default_timer()
この関数は、コードの実行時間の計算に使用できる高精度のタイムスタンプを返すことができます。- サードパーティ ライブラリを使用する:
dateutil
ライブラリに加えて、日付と時刻の処理に使用できるサードパーティ ライブラリがいくつかあります ( など)arrow
。pendulum
5.3 タイムスタンプに基づいて日付と時刻の形式に変換する方法
タイムスタンプを取得した場合は、datetime
モジュールのメソッドを使用してfromtimestamp()
タイムスタンプをdatetime
オブジェクトに変換し、そのstrftime()
メソッドを使用してdatetime
オブジェクトを必要な日付と時刻の文字列にフォーマットできます。
サンプルコードは次のとおりです。
from datetime import datetime
timestamp = 1640995200
dt = datetime.fromtimestamp(timestamp)
formatted_dt = dt.strftime("%Y-%m-%d %H:%M:%S")
print("日期时间:", formatted_dt)
6. 結論
この記事では、Python でタイムスタンプを取得する 3 つの一般的な方法 (time
モジュール、datetime
モジュール、およびdateutil
モジュールの使用) について説明します。これらのメソッドを通じて、現在時刻のタイムスタンプを簡単に取得したり、タイムスタンプを日付と時刻の形式に変換したりできます。同時に、タイムスタンプを取得する他の方法と関連する知識ポイントも紹介します。この記事が、Python でタイムスタンプを処理する皆さんのお役に立てれば幸いです。