Wo sollten Sie Wahrheits- oder Falschwerte verwenden? Dies sind syntaktische Zucker , so dass Sie sie immer vermeiden können, aber wenn Sie sie verwenden, können Sie Ihren Code lesbarer und effizienter machen. Darüber hinaus finden Sie sie in vielen Codebeispielen, ob in Python oder nicht, da dies als bewährte Methode angesehen wird.
Wie in den anderen Antworten erwähnt, können Sie sie in if-Tests und while-Schleifen verwenden. Hier sind zwei weitere Beispiele in Python 3 mit Standardwerten kombiniert mit or, sein String - Variable ist. Sie werden sich auch auf ähnliche Situationen erstrecken.
Ohne Wahrheit
if len(s) > 0:
print(s)
else:
print('Default value')
mit wahrheit ist es prägnanter:
print(s or 'Default value')
In Python 3.8 können wir den Zuweisungsausdruck nutzen :=
ohne wahrheit
if len(s) == 0:
s = 'Default value'
do_something(s)
mit wahrheit ist es auch kürzer
s or (s := 'Default value')
do_something(s)
oder noch kürzer,
do_something(s or (s := 'Default value'))
Ohne den Zuweisungsausdruck kann man tun
s = s or 'Default value'
do_something(s)
aber nicht kürzer. Einige Leute finden die s =...Linie unbefriedigend, weil sie entspricht
if len(s)>0:
s = s # HERE is an extra useless assignment
else:
s = "Default value"
Trotzdem können Sie sich an diesen Codierungsstil halten, wenn Sie sich damit wohl fühlen.
bool(value)Ergebnissen führtTrue,valueist dies wahr .