波形符(~) 運算子繼承自C,是一個一元運算符,用於反轉其操作數的位元.在 Python 中,它的主要作用涉及整數的位元運算。
對於整數, ~ 運算子有效地將它們轉換為其負補碼。這是透過反轉二進制補碼表示的每一位並將結果解釋為有符號整數來實現的。因此,~x 相當於 (-x) - 1。
例如,整數 5 的二進位表示為 0101。應用 ~ 運算子將產生 1010,當解釋為有符號整數時表示 -6。
除了整數,~ 運算子還有其他值得注意的應用:
補充布林值: ~ 運算符可以對布林值取反,將True 改為False,反之亦然。
位元操作: 與其他位元運算子(例如 &、^)結合使用,它可以對二進位資料進行複雜的操作。
循環索引: ~ 運算子可與序列一起使用來執行循環索引,允許負索引環繞到序列的另一端。
Python支援自訂類別的運算子重載。如果需要為類別定義補碼操作,則可以透過實作 invert 方法來實作。
例如,在下面的程式碼中,Foo 類別定義了一個invert 方法傳回其實例的逆:
class Foo: def __invert__(self): print('invert')
將~ 運算子應用於Foo 的算子應用於Foo 的實例將因此列印“反轉”。
以上是Python 波浪號 (~) 運算子的用途和應用是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!