since 2011-10-23
シェルスクリプトで `date -u +%Y%m%d-%H%M%S` の処理と等価なことをするには?
(現在の時刻を UTC 表記で YYYYmmdd-HHMMSS 形式の文字列に変換する)
まず、ロケールの時刻で出力するなら:
>>> import datetime >>> datetime.datetime.now().strftime('%Y%m%d-%H%M%S') '20111023-193443'
UTC の場合は utcnow を使えばいいらしい:
>>> datetime.datetime.utcnow().strftime('%Y%m%d-%H%M%S') '20111023-103945'
ファイルに書くところまでやると:
with open("timestamp", "w") as f f.write(datetime.datetime.utcnow().strftime('%Y%m%d-%H%M%S'))
since 2012-05-08
「2012年5月8日」の文字列を作るのは意外に面倒だったという話。
def format_jp_today(): from datetime import datetime dt = datetime.today() s = dt.strftime(u'%Y年X%m月X%d日'.encode('utf-8')).decode('utf-8') return s.replace('X0','X').replace('X','')
http://stackoverflow.com/questions/904928/python-strftime-date-without-leading-0