Den Python-Tilde-Operator verstehen
Der Tilde-Operator (~) in Python ist ein unärer Operator, der zur bitweisen Umkehrung oder Negation verwendet wird. Er arbeitet mit Ganzzahlen und gibt das Komplement der Eingabebits zurück.
Verwendung für Ganzzahlen
Bei Anwendung auf Ganzzahlen dreht der Tildeoperator alle Bits der Zweier um. Komplementdarstellung der ganzen Zahl. Das Ergebnis wird wiederum als Zweierkomplement-Ganzzahl interpretiert. Dies macht ~x äquivalent zu (-x) - 1.
Zum Beispiel:
>>> ~5 -6
Inversion für benutzerdefinierte Klassen verwenden
Die Verdinglichung Die Form des ~-Operators ist „operator.invert“. Klassen können diesen Operator unterstützen, indem sie eine __invert__(self)-Methode implementieren.
Zum Beispiel:
import operator class Foo: def __invert__(self): print('invert') x = Foo() operator.invert(x) # Prints 'invert' ~x # Also prints 'invert'
Dieser Operator kann für Klassen nützlich sein, bei denen es sinnvoll ist, ein „Komplement“ oder zu haben „Umgekehrt“ einer Instanz, die auch eine Instanz derselben Klasse ist.
Zusätzlich Verwendungen
Über die Integer-Inversion hinaus wird der Tilde-Operator manchmal in Kombination mit String-Slicing verwendet, um Aufgaben auf beiden Seiten einer Zeichenfolge oder Liste auszuführen. Beispielsweise kann er verwendet werden, um zu überprüfen, ob eine Zeichenfolge palindromisch ist:
def is_palindromic(s): return all(s[i] == s[~i] for i in range(len(s) // 2))
Insgesamt ist der Tilde-Operator ein vielseitiges Werkzeug, das sowohl für die bitweise Inversion als auch für die benutzerdefinierte Klasseninversion in Python verwendet werden kann.
Das obige ist der detaillierte Inhalt vonWas macht der Tilde-Operator (~) in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!