Ich ging über eine Aufgabe und stieß auf etwas, das mich verwirrte, denn ich bin nicht verrückt gut mit Python. Hier ist der Code.Warum ist diese Python-If-Anweisung ungleich wahr?
def main():
list = [1,2]
x = 2
if (x in list == True):
print("hi")
if (x in list):
print("Why does this proc?")
main()
Ich glaubte, die Ausgabe wäre beides, aber die Ausgabe ist nur die zweite if-Anweisung. Ich weiß, dass in C, wenn Sie so etwas wie
if (x = 6)
Das hatten da nur ein ‚=‘, daß x jetzt gleich 6 (Wie die Lese, wenn(), x = 6).
Passiert etwas ähnliches mit diesem Python-Code? Wird zuerst 'list == true' überprüft, und von dort aus überprüft, ob x in der Liste ist?
Jeder Einblick würde sehr geschätzt werden!
Das ist es genau. Es wird überprüft, ob 'x in Liste und Liste == Wahr 'ist. –
Aus Neugier, warum bekomme ich keinen Fehler? Ich habe auch ein paar Tests gemacht und habe 'if (list == False) probiert und das passiert auch nicht. Wenn Python die beiden vergleicht, was ist das Ergebnis? – Childishforlife
Warum erhalten Sie einen Fehler? Das ist eine absolut legale Python-Anweisung. Und ja, das wird auch nicht funktionieren, "Liste" ist nicht gleich "Falsch". –