„Tühi“ ja „mittetühi“ objekt tingimuslauses¶
Nõuanne
Pythonis on kõik „tühi“ tõeväärtusega False
ja „mittetühi“ True
.
if
ehk bool kontekstis on Pythonis False väärtusega:
False
None
tühjad sõned -
''
and""
tühjad konteinerid - tühi
list
, tühidict
, tühituple
, jnenumbrilised väärtused, mis on võrdsed nulliga -
0
,0.0
,-0.0
pythoni objektid, mis implementeerivad __bool__ tagastama
False
või0
pythoni objektid, mis ei implementeeri __bool__, kuid __len__ tagastab
0
Kõike muud peetakse pythonis if
juures True
-ks.
if not []: # [] -> False
print("List is empty.")
if [1, 2, 3]: # [1, 2, 3] -> True
print("List has elements.")
>>> bool({})
False
>>> bool({"a": 2})
True
>>> bool(1,)
True
>>> bool(())
False
>>> bool('')
False
Alljärgnevat on hea teada, kuid sellise koodi kirjutamine võib vähendada koodi loetavust.
# python
if 100:
print("True")
if not 0:
print("True")
# Output:
# True
# True
>>> bool(0)
False
>>> bool(0.0)
False
>>> bool(-0.0)
False
>>> bool(1)
True
>>> bool(555)
True