Python datetime クラスのメソッド
strptime や strftime を利用するのに、
from datetime import datetime
と書いて、datetime.strptime ( 文字列, 書式 ) を書くのが長くて嫌です。
Python 分単位で時刻の範囲を展開 - Oboe吹きプログラマの黙示録
これを書いていて、strptime なんどかならないか?と。
そこで、
import datetime.strptime as Strptime
と書いて、Strptime で済ませようと考えたのですが、
ModuleNotFoundError: No module named 'datetime.strptime'; 'datetime' is not a package
と、怒られてしまいます。
StackOverFlow にあるように、皆、同じ思いなんですね。
Python ImportError: No module named datetime - Stack Overflow
ちょっと、普通の処理文を紛れてしまって微妙なとこですが、
strptime = datetime.strptime
と1文書けば、Python 分単位で時刻の範囲を展開 - Oboe吹きプログラマの黙示録
これも、
# -*- coding: UTF-8 -*- from datetime import datetime from datetime import timedelta def minutes_expand(from_datetime, to_datetime): result = [] for x in range(0, int((to_datetime-from_datetime).seconds / 60) + 1): result.append(from_datetime + timedelta(minutes=x)) return result strptime = datetime.strptime for t in minutes_expand(strptime('2019-02-26 00:00', '%Y-%m-%d %H:%M'), strptime('2019-02-26 00:10', '%Y-%m-%d %H:%M')): print("'%s'" % t.strftime('%Y/%m/%d %H:%M:%S'))
と、少しは読みやすくなります。
strptime = datetime.strptime
の前にコメントでも書けば良いか。。いや、コメント文ある方が読みにくいか。。。