Pendulumとは
日時の操作を容易にするPythonパッケージ
datetimeインスタンスは基本的なケースでは十分ですが、より複雑なユースケースに直面すると、制限が見られることが多く
標準ライブラリに依存しながらも、よりクリーンで使いやすい API を提供します。つまり、依然としてdatetimeですが、より優れています。
インストール
pip install pendulum
使い方
now = pendulum.now()
print(now)
# 2024-06-22 07:06:08.923470+09:00
timezone_name = now.timezone.name
print(timezone_name)
# Asia/Tokyo
timezoneのインスタンス, 名前取得
tzone = pendulum.now().timezone
# Asia/Tokyo
tzone = pendulum.now().tz
# Asia/Tokyo
tzone = pendulum.now().timezone_name
# Asia/Tokyo
タイムゾーンを変更して日時を取得
now_in_london_tz = pendulum.now('Europe/London')
# 2024-06-21 23:19:06.440404+01:00
今日・明日・昨日 取得
today = pendulum.today()
# 2024-06-22 00:00:00+09:00
tomorrow = pendulum.tomorrow()
# 2024-06-23 00:00:00+09:00
yesterday = pendulum.yesterday()
# 2024-06-21 00:00:00+09:00
from_format()
from_format() は、ネイティブの datetime.strptime() 関数に似ていますが、カスタムトークンを使用してDateTimeインスタンスを作成
データ型は class 'pendulum.datetime.DateTime'
dt = pendulum.from_format('2024-06-22 09', 'YYYY-MM-DD HH')
# 2024-06-22 09:00:00+00:00
class 'datetime.datetime'に変換
converted = datetime(dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second)
class 'datetime.datetime'を class 'pendulum.datetime.DateTime'に変換
import datetime
now = datetime.datetime.now()
pendulum_now = pendulum.instance(now)