首頁 > 後端開發 > Python教學 > Python 中波浪號 (~) 運算子的作用是什麼?

Python 中波浪號 (~) 運算子的作用是什麼?

Linda Hamilton
發布: 2024-11-30 11:09:10
原創
711 人瀏覽過

What Does the Tilde (~) Operator Do in Python?

了解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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板