Heim >Backend-Entwicklung >Python-Tutorial >Warum wird „0 < 0 == 0' in Python als „Falsch' ausgewertet?

Warum wird „0 < 0 == 0' in Python als „Falsch' ausgewertet?

DDD
DDDOriginal
2024-12-09 03:27:12804Durchsuche

Why Does `0 < 0 == 0` Evaluate to `False` in Python?

Verkettete Vergleiche in Python: Das Geheimnis von 0

In den Tiefen des Standardbibliothekscodes von Python liegt ein rätselhaftes Konstrukt in Queue.py aus Python 2.6:

def full(self):
    """Return True if the queue is full, False otherwise
    (not reliable!)."""
    self.mutex.acquire()
    n = 0 <p>Warum ist dieser Ausdruck 0 </p><p><strong>Verkettete Vergleiche: Pythons Verknüpfung</strong></p><p>Python hat eine einzigartige Funktion namens „verkettete Vergleiche“, die die Darstellung von Bereichsvergleichen prägnanter macht. Folgendes entspricht beispielsweise der Verwendung verketteter Vergleiche:</p><pre class="brush:php;toolbar:false">0 <p>Intern werden diese verketteten Vergleiche unterschiedlich interpretiert. Python wertet den Ausdruck von links nach rechts aus und gibt den Wert des ersten Vergleichs zurück, der „False“ ergibt. In unserem Fall ist 0 </p><p>Wenn dagegen Klammern eingeführt werden, erzwingen sie, dass die Auswertung des darin enthaltenen Ausdrucks vor der nächsten abgeschlossen wird Vergleich angewendet wird. Dies negiert das verkettete Vergleichsverhalten. Als Ergebnis erhalten wir die erwarteten True-Werte, wenn Klammern hinzugefügt werden:</p><pre class="brush:php;toolbar:false">(0 <p>Daher ist der Ausdruck der Methode full(), 0 </p>

Das obige ist der detaillierte Inhalt vonWarum wird „0 < 0 == 0' in Python als „Falsch' ausgewertet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn