やること
限られた機能しか使わないため、
備忘録として、Pythonのdatetimeモジュール系で出来る事を簡単にまとめ。
環境
virtualbox 5.2.26
vagrant 2.1.2
python 3.5.2
mac 10.14.2
日時取得
input.py
from datetime import datetime
now = datetime.now()
print(now.year, '/', now.month, '/', now.day, ' ', now.hour, ':', now.minute, ':', now.second, sep='')
output.py
2019/2/26 12:00:00
時刻がずれていた場合手動で設定
$ sudo date -s "2019/02/26 13:00:00"
※仮想マシンを落とすと同期する設定にしてても時間がズレるため手動で設定。
Vagrantfile弄ったり、Vboxmanage,vboxadd-serviceなどのコマンド色々試したがズレる・・。
解決策探してます。。
日時作成して文字列で表示
input.py
from datetime import datetime
day = datetime(1853, 6, 3, 13, 00, 00)
str_day = day.strftime('%Y年%m月%d日 %H時%M分%S秒')
print(str_day)
output.py
1853年06月03日 13時00分00秒
文字列を日時に変換
input.py
from datetime import datetime
str_day = '1853/6/3 12:00:00'
day = datetime.strptime(str_day, '%Y/%m/%d %H:%M:%S')
# 指定フォーマットは同じにする。
print(day)
output.py
1853-06-03 12:00:00
日時の差を求める
input
2019 2 27
input.py
from datetime import datetime
from datetime import timedelta
day = input().strip().replace(' ', '/')
base = datetime.strptime(day, '%Y/%m/%d')
result = base - timedelta(days=10000)
# 入力された日にちから1万日前を求める。
str_result = result.strftime('%Y年%m月%d日')
print(str_result)
output
1991年10月12日
とりあえず、基本的な機能だけ。