Ich habe über einige Code kommen, der lautet:Gibt es einen Unterschied zwischen `if bool (x)` und `if x` in Python?
if bool(x):
doSomething
Ich denke, dass die folgenden die gleiche Arbeit tun würde:
if x:
doSomething
The reference sagt, dass es die Suite, wenn der Testausdruck auswertet
gefunden um wahr zu sein
Der Referenz sagt von Booleschen Ausdrücken:
Im Rahmen der Boolesche Operationen, und auch wenn Ausdrücke, die durch Steuerflussrechnung verwendet werden, sind durch Steuerflussrechnung verwendet wird, werden die folgenden Werte interpretiert als falsch: False , Keine, numerische Null aller Typen und leere Strings und Container ... Alle anderen Werte werden als wahr interpretiert.
Die reference sagt der bool()
Funktion:
Wert auf einen Boolean konvertieren, die Standard Wahrheit Testverfahren unter Verwendung von
So die beiden oben identisch sind oder gibt es eine Extra Subtilität zu ihm?
Folgen Sie einfach dem ersten Link in der Dokumentation über, ob und Sie werden Ihre Antwort haben. – phant0m
Ich weiß, was die Referenz sagt. Deshalb habe ich es zitiert. Wie die Referenz sagt, handelt es sich nicht um eine Spezifikation, und ich frage, ob mein Lesen der Dokumente korrekt ist. – Joe
Nein, es verbindet Sie mit _ _nonzero() _ _ – phant0m