Python での数学演算子のオーバーライド
Python では、カスタム演算子を定義する機能は非常に人気の機能です。 Python は本質的に演算子の再定義をサポートしていませんが、賢い手法でこの制限を克服できます。
中置演算子の定義
この手法を使用すると、ユーザーは中置演算子を定義できます。ラムダ関数を使用した乗算演算子 *。中置演算子を定義する構文は次のとおりです。
<code class="python">operator = Infix(lambda x, y: operation)</code>
ここで、ラムダ x, y: 演算は、オペランド x と y に対して目的の演算を実行する関数を表します。
使用例
次の例を考えてみましょう:
<code class="python">x = Infix(lambda x, y: x * y) print (2 |x| 4) # Output: 8</code>
<code class="python">isa = Infix(lambda x, y: x.__class__ == y.__class__) print([1, 2, 3] |isa| []) print([1, 2, 3] <<isa>> []) # Output: True</code>
これらの例は、カスタム演算子の定義を可能にして Python の機能を拡張するこの手法の威力を示しています。
以上がPython でカスタム演算子を定義する方法: 中置演算子の実装?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。