У меня есть список чисел с плавающей запятой, и я хочу проверить, все ли они равны нулю. Поэтому я пытаюсь реализовать это с помощью функции all ().
Я пробовал использовать один метод, который, по моей теории, должен работать, но не работает:
test = [0, 0.4, 0, 0, 0.4, 0.4, 0.4, 0.21052631578947367, 0.4, 0.21052631578947367, 0.21052631578947367, 0.4, 0.21052631578947367]
all(test) == 0
>>> True
В приведенном выше случае вывод должен быть False
, однако я не уверен, почему это True
.
Метод, представленный ниже, является тем, который работает.
test = [0, 0.4, 0, 0, 0.4, 0.4, 0.4, 0.21052631578947367, 0.4, 0.21052631578947367, 0.21052631578947367, 0.4, 0.21052631578947367]
all(x==0 for x in test)
>>> False
Кто-нибудь может объяснить это короткое замыкание во всем поведении?