Я тестировал список, чтобы увидеть, пуст он или нет. Обычно я использую len (list )== 0, и я смутно припоминаю, что недавно читал, что правильный способ проверить, пуст ли список, это определить, является ли он истинным или ложным.
Итак, я попробовал list is False, и он вернул False. Может быть, я должен использовать == ? Нет, это также вернуло false. list равно True, возвращено false, как и list == True.
Теперь я в замешательстве, поэтому быстро гуглю и нахожу:Лучший способ проверить, пуст ли список
Лучший ответ:
if not a:
print "List is empty"
Итак, я ищу еще немного и в конечном итоге нахожусь в руководстве по Python, где 4.1 утверждает:
Любой объект может быть проверен на истинность, для использования в условиях if или while или в качестве операнда логических операций, описанных ниже. Следующие значения считаются ложными:
любая пустая последовательность, например, '', (), [].
Теперь я просто в замешательстве. Если я тестирую список, как будто это не список, он работает нормально. Но если пустой список ложен, то почему я не могу просто сделать это, если список равен False или если list == False?
Спасибо