Pythonの arrow
モジュールは、日付と時刻の操作を可能にします。
インスタンスを作成し、それに応じてタイムスタンプを操作するのに役立ちます。
日付-時間の変換を扱うためのユーザーフレンドリーなアプローチを示している。
特徴
- Arrow モジュールは Python 2.7 以降のバージョンでサポートされています。
- タイムゾーンを意識しています。
- 文字列を自動的にパースする
- フルレベルの実装
arrowモジュールのインストール
pip install arrow`
import arrow
utc = arrow.utcnow()
print ( 'UTC Time =' , utc)
ist = arrow.now( 'Asia/Calcutta' )
print ( 'IST Time =' , ist)
print ( 'tzinfo =' , ist.tzinfo)
local_time = arrow.now()
print ( 'Local Time =' , local_time)
|
この記事もチェック:Pythonのpytzの使い方|タイムゾーンを自在に操作する方法を解説
特定のタイムゾーンの現在の時刻にアクセスする
例 UTC、IST、ローカルタイムゾーンの現在の時刻を表示する場合。
import arrow
ist = arrow.now( 'Asia/Calcutta' )
print ( 'IST Time =' , ist)
pst = ist.to( 'US/Pacific' )
print ( 'PST Time =' , pst)
|
結果は、以下の通りです。
import arrow
local = arrow.now()
print ( 'Current Local Time =' , local)
print ( 'Current Local Timestamp =' , local.timestamp)
date = arrow.get(local.timestamp)
print ( 'Date from Timestamp =' , date)
|
タイムゾーンの変換
Pythonのarrowモジュールはタイムゾーンを変換する to()
関数を提供します。
import arrow
local = arrow.now()
result = local. format ( 'YYYY-MM-DD' )
print (result)
|
を出力します。
import arrow
local = arrow.now()
result = local. format ( 'YYYY-MM-DD HH:mm:ss' )
print (result)
|
タイムスタンプから日付を取得する方法は?
import arrow
date = arrow.get( '2013-05-05 12:30:45' , 'YYYY-MM-DD HH:mm:ss' )
print (date)
|
出力してください。
import arrow
date = arrow.get( 2020 , 1 , 2 )
print (date)
|
arrowモジュールによる日付の書式設定
format` メソッドは、ユーザーの選択に従って、与えられた日付を操作し、フォーマットするために使われます。
例1: YYYY-MM-DD フォーマットで日付をフォーマットする場合
import arrow
utc = arrow.utcnow()
print ( 'Current UTC= ' , utc)
utc_updated1 = utc.replace(year = 2017 , month = 9 )
print ( 'Updated UTC= ' , utc_updated1)
utc_updated2 = utc.shift(years = - 4 , weeks = 3 )
print ( 'Updated UTC= ' , utc_updated2)
|
結果は以下の通りです。
2020-01-02
例2: YYYY-MM-DD HH:mm:ss フォーマットで日付をフォーマットする場合
import arrow
local = arrow.now()
print (local)
result = local.humanize()
print ( "Time elapsed: " )
print (result)
|
出力してください。
2020-01-02 14:12:11
日付を文字列に変換するパース処理
結果は、以下の通りです。
2013-05-05T12:30:45+00:00
How to instantiate date from passed arguments?
結果は以下の通りです。
2020-01-02T00:00:00+00:00
日付と時刻に関する操作の実行
replace()と
shift()` メソッドは、現在の日付に従って未来と過去の日付を利用するために使われる。
例えば、以下の様になります。
結果は以下の通りです。
人間に優しい日付時刻の表現方法
humanize()
メソッドを使うと、現在の日付/時刻に応じた人間に優しい日付/時刻の表現を提供することができる。
humanize()
メソッドを使うと、与えられた時間からの経過時間を知ることができる。
例えば、以下の様になります。
結果を出力すると、以下の様になります。
2020-01-02T14:34:40.447432+05:30
経過した時間
たった今
まとめ
この記事で、arrowモジュールが提供する機能を理解しました。
これは、タイムゾーンをサポートする日付と時刻を扱うためのシンプルなモジュールです。