python datetime.datetime、datetime.date、datetime.timedelt時間処理

python datetime.datetime、datetime.date、datetime.timedelt時間処理

datetime日付と時刻を処理するための主なオブジェクト:
    timedelt:日付の差または時刻の差(一般的に使用される)
    datetime:時刻と日付(一般的に使用される)
    日付:日付
    時間:時間

1、datetime.datetime / datetime.date

(1)現在の日付と時刻を取得します:(返される結果:datetime.datetime(2020、9、23、16、6、28、491179))

import datetime as dt
dt.datetime.now() 
dt.datetime.today() 

(2)現在の日付を取得する:(結果を返す:datetime.date(2020、9、23))

dt.date.today() 
dt.datetime.now().date()
dt.datetime.today().date()

(3)日付の年を取得します:(戻り結果:2020)

dt.datetime(2020,9,23).year
dt.date(2020,9,23).year

(4)日付の月を取得します:(戻り結果:9)

dt.datetime(2020,9,23).month
dt.date(2020,9,23).month

(5)日付の日付数を取得する:(返される結果:23)

dt.datetime(2020,9,23).day
dt.date(2020,9,23).day

(6)取得日は何曜日ですか?

dt.datetime(2020,9,23).isoweekday()  # (返回结果:3)1-7 对应 周一 - 周日
dt.date(2020,9,23).weekday()  # (返回结果:2)0-6 对应 周一 - 到周日

(7)タイムゾーン:

  • 現在とutcnowの違い:
        現在:現地時間
        utcnow:世界時間(タイムゾーンが異なるため、2つの時間は異なります)

  • 「アジア/上海」の現在の時刻は「2020-09-23 16:20:25」で、「アジア/コルカタ」の時刻に変換されます。

    import pytz    
    dt_in = dt.datetime(2020, 9, 23, 16, 20, 25, tzinfo = pytz.timezone('Asia/Shanghai'))
    dt_in.astimezone(pytz.timezone('Asia/Kolkata'))
    # 返回结果:datetime.datetime(2020, 9, 23, 13, 44, 25, tzinfo=<DstTzInfo 'Asia/Kolkata' IST+5:30:00 STD>)
    

    注:タイムゾーンに対応するコードを表示します:pytz.all_timezones

2、datetime.timedelt

    timedeltは時差によく使用され、そのパラメーターには、
        週、日(デフォルト)、時間、分、秒、マイクロ秒
        (詳細については、Python日付と日、週、時間timedeltaを参照

おすすめ

転載: blog.csdn.net/weixin_40012554/article/details/108750259