了解Python 波形符運算子
Python 中的波形符(~) 運算子是用於按位逆求或反求反的一元運算子。它對整數進行運算並傳回輸入位的補碼。
整數的用法
應用於整數時,波形符運算子會翻轉二進位的所有位元 -整數的補碼表示。結果再次被解釋為二進制補碼整數。這使得 ~x 等價於 (-x) - 1。
例如:
>>> ~5 -6
對自訂類別使用反轉
具體化~ 運算子的形式是operator.invert。類別可以透過實作 __invert__(self) 方法來支援此運算子。
例如:
import operator class Foo: def __invert__(self): print('invert') x = Foo() operator.invert(x) # Prints 'invert' ~x # Also prints 'invert'
此運算子對於需要「補集」或「補充」的類別非常有用。實例的“逆”,也是同一類別的實例。
其他使用
除了整數反轉之外,波形符運算子有時與字串切片結合使用,以在字串或清單的兩側執行任務。例如,它可用於檢查字串是否為回文:
def is_palindromic(s): return all(s[i] == s[~i] for i in range(len(s) // 2))
總的來說,波形符運算子是一個多功能工具,可用於Python 中的位元反轉和自訂類反轉。
以上是Python 中波浪號 (~) 運算子的作用是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!