In der Google Voice Python-Implementierung stieß ich auch darauf, ihre Verwendung war während eines Funktionsaufrufs. Die Parameter werden standardmäßig auf "None" gesetzt, und wenn die Funktion aufgerufen wird, können sie überprüfen, ob die Werte geändert wurden oder der Standardwert ist. I.E.
def login (user=None, password=None)
if user is None:
user = input('Please enter your username');
...
return <something>;
von
login()
ODER
login(user='cool_dude')
ODER
eine beliebige Kombination von Benutzer/Passwort, das Sie wünschen genannt.
Zusätzlich bedeutet Ihre "Aktualisierung" der Logik, dass die Variable == wahr oder falsch ist. Das ist nicht in allen Fällen richtig (es kann in einigen Fällen funktionieren, aber ich werfe sie raus, da es kein allgemeiner Fall ist). Was Sie testen, indem Sie die "NONE" -Logik verwenden, ist, ob die Variable außer NONE alles enthält. Ähnlich wie das, was ich oben gesagt habe, war die ganze "Login-Funktion" zu bestimmen, ob der Benutzer etwas, nicht ob der Wert gültig war, wahr, usw.
Also, .... "A" ist nicht " B "ist anders als" A ist 'nicht B'" und Python wendet das erstere an. Ist es nicht? – Zhen
'ist nicht' ist das Gegenteil von' ist', ja. Siehe http://docs.python.org/2/reference/expressions.html#not-in. Man könnte auch sagen "nicht A ist B". –