Pythonでは関数の引数が左から右に評価されると考えるのは安全でしょうか?Python関数の引数の評価順序に頼っても安全ですか?
このようなことが起こったと言われていますが、おそらくコードを壊す可能性のあるこの順序を変更する方法があります。
私は何をしたいことは、関数呼び出しのためのタイムスタンプを追加することです:
l = []
l.append(f(), time.time())
私は順次引数を評価することができることを理解する:
l = []
res = f()
t = time.time()
l.append(res, t)
しかし、それはあまりエレガントに見えるので、私は」私がそれに頼ることができるならば、最初の方法が好きです。
参考文献にそういったことが明示されていて、これが将来変更される可能性が明示されていない場合は、それに頼ることができます。 –
''この順序を変える何らかの方法」 ''どうすれば変更できますか? (関数は引数の評価方法を選択しません。関数に渡される前に評価されます) –
ユースケースでは、 'f() 'は長時間実行される関数です。 – Xaqq