2020-03-04 15:47:48 JST
20200304T064748Z
Python2で関数の比較が不定になる話についての考察。手元の環境(Python 2.7.16 の対話モード)では真偽が交代で入れ替わる。最初の「(lambda n:n) < (lambda n:n)」の実行は真で、次の実行では偽、更に次の実行では真と繰り返される。思うに関数についてはオブジェクトのアドレスで比較をしており、 GCによるオブジェクト回収と再利用のタイミングから規則性が生まれているのであろう。