datetime モジュールは、日付や時刻を操作するためのクラスを提供しています。
日付や時刻に対する算術がサポートされている一方、実装では出力のフォーマットや操作のための効率的な属性の抽出に重点を置いています。
###今の時間が知りたい場合
isoformatとすれば文字列に変換することができる
自分なりに表示形式を変える事もできる
qiita.py
import datetime
now = datetime.datetime.now()
print(now)
print(now.isoformat())
print(now.strftime('%d/%m/%y-%H-%M-%S-%f'))
実行結果
2020-08-18 16:57:51.138416
2020-08-18T16:57:51.138416
18/08/20-16-57-51-138416
###年月日のみを表示
qiita.py
import datetime
today = datetime.date.today()
print(today)
print(today.isoformat())
print(today.strftime('%d/%m/%y'))
実行結果
2020-08-18
2020-08-18
18/08/20
###時間のみ表示
qiita.py
import datetime
t = datetime.time(hour=1,minute=10,second=5,microsecond=100)
print(t)
print(t.isoformat())
print(t.strftime('%H-%M-%S-%f'))
実行結果
01:10:05.000100
01:10:05.000100
01-10-05-000100
###過去の時間を扱いたいとき
1週間前
qiita.py
import datetime
now = datetime.datetime.now()
print(now)
d = datetime.timedelta(weeks=-1)
print(now+d)
実行結果
2020-08-18 17:27:45.640006
2020-08-11 17:27:45.640006
一年前
qiita.py
print(now)
d = datetime.timedelta(days=365)
print(now-d)
実行結果
2020-08-18 17:26:48.128885
2019-08-19 17:26:48.128885
###time
time.sleep(secs)
与えられた秒数の間、呼び出したスレッドの実行を停止します。
qiita.py
import time
print("hei")
time.sleep(5)
print("#####")
epochtime
協定世界時 (UTC) での1970年1月1日午前0時0分0秒から形式的な経過秒数(すなわち、実質的な経過秒数から、その間に挿入された閏秒を引き、削除された閏秒を加えたもの)として表される
qiita.py
import time
print(time.time())
実行結果
1597739333.901404
###使い所
ファイルが存在しなければ作成
存在すれば、現在の時刻が記載されたファイルのコピーが生成される
qiita.py
import os
import shutil
import datetime
now = datetime.datetime.now()
file_name = "test.txt"
if os.path.exists(file_name):
shutil.copy(file_name, '{}.{}'.format(
file_name,now.strftime('%d_%m_%y_%H_%M_%S')
))
with open(file_name,'w') as f:
f.write('test')