Дзен Python говорит, что явное лучше, чем неявное.
Тем не менее, питонический способ проверки коллекции c на пустоту таков:
if not c:
# ...
и проверка того, не является ли коллекция пустой, выполняется как:
if c:
# ...
то же самое для всего, что может иметь "нули" или "пустоту" (кортежи, целые числа , strings, None и т. д.)
Какова цель этого? Будет ли мой код более ошибочным, если я этого не сделаю? Или это позволяет использовать больше вариантов использования (например, какой-то полиморфизм), поскольку люди могут переопределить эти логические приведения?