Python の引数デフォルト値に計算式入れて失敗
引数に時間を入れなければ現在の時間、と思って下記のような関数を書いて失敗
def addFile(s, nowTime = datetime.datetime.now()):
この場合、最初の関数生成時にデフォルト値が生成されるそうで、ずっと最初に呼び出した値(時刻)が使われ続けた
None等で対応するそうです
def addFile(s, nowTime = None):
if nowTime is None:
nowTime = datetime.datetime.now()
コメント