Gdzie należy używać wartości Prawda lub Falsy? Są to cukier syntaktyczny , więc zawsze możesz ich uniknąć, ale ich użycie może zwiększyć czytelność kodu i zwiększyć wydajność. Co więcej, znajdziesz je w wielu przykładach kodu, czy to w Pythonie, czy nie, ponieważ jest to uważane za dobrą praktykę.
Jak wspomniano w innych odpowiedziach, możesz ich używać w if testy i pętle while. Oto dwa inne przykłady w Pythonie 3 z wartościami domyślnymi połączonymi z or, sbędącymi zmienną łańcuchową. Będziesz także odnosić się do podobnych sytuacji.
Bez prawdy
if len(s) > 0:
print(s)
else:
print('Default value')
z prawdą jest bardziej zwięzłe:
print(s or 'Default value')
W Pythonie 3.8 możemy skorzystać z wyrażenia przypisania :=
bez prawdy
if len(s) == 0:
s = 'Default value'
do_something(s)
z prawdą jest też krótszy
s or (s := 'Default value')
do_something(s)
lub nawet krócej,
do_something(s or (s := 'Default value'))
Bez wyrażenia przypisania można to zrobić
s = s or 'Default value'
do_something(s)
ale nie krócej. Niektórzy ludzie uważają tę s =...linię za niezadowalającą, ponieważ odpowiada
if len(s)>0:
s = s # HERE is an extra useless assignment
else:
s = "Default value"
niemniej jednak możesz stosować się do tego stylu kodowania, jeśli czujesz się z nim swobodnie.
bool(value)wynikiTrue,valueto prawda .