Heim > Backend-Entwicklung > Python-Tutorial > Warum funktioniert meine „Not In'-Prüfung für Tupel in Python nicht?

Warum funktioniert meine „Not In'-Prüfung für Tupel in Python nicht?

Barbara Streisand
Freigeben: 2024-10-27 11:18:01
Original
624 Leute haben es durchsucht

Why Isn't My

Vorhandensein von Elementen in einer Python-Liste überprüfen

Bei der Arbeit mit Listen in Python ist es oft notwendig zu überprüfen, ob ein bestimmtes Element vorhanden ist oder nicht. Für bedingte Verzweigungen, die auf dem Fehlen eines Elements in einer Liste basieren, wird üblicherweise die folgende Syntax verwendet:

<code class="python">if element not in list:
    # Code to execute if element is not in the list</code>
Nach dem Login kopieren

Ein Benutzer ist jedoch auf ein Problem gestoßen, bei dem diese Syntax für eine Liste nicht wie erwartet funktioniert von Tupeln.

Das Problem

Der bereitgestellte Code versucht zu überprüfen, ob ein Tupel nicht in einer Liste ist, und führt nur dann eine bestimmte Aktion aus, wenn das Tupel nicht vorhanden ist:

<code class="python">if curr_x -1 > 0 and (curr_x-1 , curr_y) not in myList:

    # Do Something</code>
Nach dem Login kopieren

Der Benutzer stellt fest, dass dieser Code unter bestimmten Umständen die beabsichtigte Aktion nicht ausführt.

Die Lösung

Die bereitgestellte Syntax zum Überprüfen, ob ein Element nicht in einer Liste enthalten ist, ist korrekt und sollte dies auch tun Funktioniert ohne Probleme. Daher liegt der Fehler wahrscheinlich an einer anderen Stelle im Code.

Um dieses Problem zu beheben, können die folgenden Schritte unternommen werden:

  1. Überprüfen Sie die Werte von curr_x, curr_y und myList während der Bedingungsprüfung: Stellen Sie sicher, dass das Tupel (curr_x-1, curr_y) nicht in myList vorhanden ist, wenn die Bedingung als Falsch ausgewertet wird.
  2. Überprüfen Sie die Einrückung des Bedingungscodeblocks :Stellen Sie sicher, dass die beabsichtigte Aktion ordnungsgemäß im if-Block eingerückt ist.
  3. Debuggen Sie den Code, indem Sie Zwischenwerte drucken:Verwenden Sie Druckanweisungen oder einen Debugger, um die Werte von curr_x anzuzeigen. curr_y, myList und das Ergebnis der bedingten Prüfung zur Laufzeit. Dies hilft, die Ursache des Problems einzugrenzen.

Das obige ist der detaillierte Inhalt vonWarum funktioniert meine „Not In'-Prüfung für Tupel in Python nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage