Nejlepší odpověď
Zde je funkce ke kontrole, zda je řetězec prázdný:
 def is\_empty(string): 
  return not string.strip() 
Prázdné sekvence jsou falešné a v booleovském kontextu se vyhodnotí jako False. Tímto způsobem můžete zkontrolovat, zda je řetězec prázdný nebo ne. Nejprve odstraňte mezery, takže pokud řetězec obsahuje pouze mezery, budou odstraněny a řetězec bude mít hodnotu null, což bude vyhodnoceno jako False. Metodu strip () můžete odstranit, pokud nechcete, aby řetězce s pouze mezerami byly považovány za prázdné.
Příklad použití:
 print(is\_empty("")) # Empty string. 
 print(is\_empty(" ")) # String with only a space char. 
 print(is\_empty("Hello!")) # String with actual characters. 
Výstup:
Pravda
Pravda
False
Poznámka: Buďte explicitní a použijte bool () v funkce, pokud do funkce potřebujete předat i jiné věci než řetězce.
Odpověď
Předpokládám, že mluvíte o seznamech (Python má pole , ale velmi se liší od seznamů).
Tři způsoby:
1 Otestujte pravdivost
Pokud víte, že jde o seznam, který děláte:
 if not my\_list: 
  print(‘List is empty’) 
Prázdné kontejnery (seznamy, množiny, n-tice, dikty) se vyhodnotí jako nepravdivé
2 Test proti em seznam produktů
 if my\_list == []: 
  print(‘List is empty’) 
3 Otestujte délku
 if len(my\_list) == 0: 
  print(‘List is empty’) 
Ze tří možností je první považována za nejčistší
Další:
Pokud svůj seznam testujete, než se ho pokusíte použít, nejlepší způsob, jak to udělat, je neobtěžovat se a jednoduše použít seznam a zachytit chyby:
 try: 
  customer = customer\_list[customer\_number] 
 except IndexError: 
  print(‘List is empty or {customer\_number} doesn’t exist’) 
Chytání této chyby je považováno za lepší než výslovné testování prázdnoty. Jedná se o jeden z principů Pythonu, který se nazývá EAFP: Snadnější požádat o odpuštění než o povolení.
Poznámky k početným polím.
 Numpy výše uvedené mechanismy nutně nedodržuje – například metoda 1 generuje chybu a výše uvedená metoda 3 by měla být například the\_array.size == 0.