Python---時間を処理するための標準ライブラリtime,datetime

6809 ワード

Pythonで時間を処理するための標準ライブラリにはtime,datetimeがある. 
timeモジュールは3種類の時間表現形式の相互変換と一般的な時間問題を処理する.
Datetimeモジュールの処理時間の増減、問題の修正.
時間の3つの表現形式:(1)フォーマットされた文字列eg"'2018''3''24''16':'40'"
(2)タイムスタンプ.1970年から現在までの時間差の秒数表現である.コンピュータは1970年にUnixが誕生したことを基準に時間を記入します.
(3)メタグループ(struct_time).年、月、日、時、分、秒、週の何日目、年の何日目、タイムゾーン(サマータイムかどうか)の9つの要素が含まれています.
timeモジュールの一般的な関数:
import time

print(time.timezone)  #    
print(time.daylight)   #       
print(time.altzone)  #UTC         

print(time.time()) #     
time.sleep(2) # 2 
print(time.gmtime(16789000))  #--struct time(UTC),    ,        struct time   
print(time.localtime(16789000)) #--struct time(  ),    ,        struct time   
x=time.localtime(16789000)
print(time.mktime(x))  #     ,    。 struct time(  )-->   
print(time.strftime("%Y-%m-%d %H:%M:%S",x))  #               
print(time.strptime("2018-03-24 17:25:10","%Y-%m-%d %H:%M:%S"))  #                    
print(time.asctime(x))  #                    
print(time.ctime(16789000)) #                

datetimeモジュールの一般的な関数:
import datetime  #  time     
#datetime.datetime    , , , , ,    
#1.    
print(datetime.datetime.now())  #      
print(datetime.datetime.now()+datetime.timedelta(3))  #3    
print(datetime.datetime.now()-datetime.timedelta(3))  #3    
print(datetime.datetime.now()+datetime.timedelta(hours=3)) #3     
print(datetime.datetime.now()-datetime.timedelta(hours=3))  #3     
print(datetime.datetime.now()+datetime.timedelta(minutes=20)) #20    
#    
a=datetime.datetime.now()
print(a.replace(minute=45,hour=5))

時間表現フォーマット参照
%aローカルlocal簡略化曜日名すなわち英字略称%Aローカル完全曜日名%bローカル簡略化月名%Bローカル完全月名%cローカル対応日付と時間は%d 1ヶ月目の日付(01-31)%H 1日目の数時間(24時間制00-23)%I数時間目(12時間制01-12)を表す%j 1年目の日付(001-366)%m月%M分(00-59)%S秒%U 1年目の曜日.(00-53日曜日は1週間の開始)%w 1週間のうちの何日目(0-6,0は日曜日)%W同%U.ただし月曜日を1週間の開始%xローカル対応日%Xローカル対応時間%y世紀の年%Y完全な年%Zタイムゾーンの名前%%'%'文字を削除