質問

このファイル、関数 cross_from_below(x、threshold)に、 threshold = threshold という行があります。この行のポイントは何ですか?これは、このコマンドがなかった場合とは異なることをしますか?

役に立ちましたか?

解決

その割り当てには意味がありません。おそらく残っているだけなので、削除する必要があります。次の関数はほぼ同じで、ありません。

他のヒント

いいえ、あなたが引用する特定の例では、その行は(無害ですが)冗長です-実際、次の機能(下からではなく上からのクロスしきい値)はほぼ同じです(もちろん比較の方向を保存します) )、その追加の割り当てはありませんが、同じように機能します。

threshold = threshold のようなものが違いを生む唯一のケースは def ステートメントにあり、名前の早期バインディングを強制するイディオム(デフォルト値が def の時点で評価されるという事実、つまり「早期」を利用します-)。しかし、それはそのコードが行っていることではなく、完全を期すために追加するだけです。

何か意味があるかもしれません。たとえば、 threshold がクラスのプロパティである場合、それを割り当てるとセッターメソッドを呼び出すことができます。

しかし、この場合、タイプミスだと思います。 changelog 。これが何らかの理由で意図的なものであったというヒントはありません。

または、ある時点で次のように書くことが理にかなっているケースの1つである可能性があります。

 self.threshold = threshold

関数はしきい値を維持する必要があるクラスのメソッドであるため。 (その場合、それは何か他のものを意味しますよね?)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top