Ноль или не ноль python
Есть некий функциональный код
print(any(map(lambda x: x != 0, map(int, input().split()))))
Выведите True, если среди введенных чисел есть хотя бы один нуль, или False в противном случае.
не могу понять, как при следующем вводе заставить делать правильный вывод:
Тест 1 Входные данные: 3 4 19 14 Вывод программы: False
Тест 2 Входные данные: 7 8 8 8 12 12 11 28 Вывод программы: False
Тест 3 Входные данные: 7 0 20 9 14 5 29 4 Вывод программы: True
Скрин текущего вывода при
print(any(map(lambda x: x == 0, map(int, input().split()))))
Ответы (2 шт):
Автор решения: gil9red
→ Ссылка
Такое ощущение, что вы неправильно считываете числа, попробуйте так:
n = int(input())
print(any(map(lambda x: x == 0, (int(input()) for _ in range(n)))))
Без лишней функциональщины:
n = int(input())
print(any(int(input()) == 0 for _ in range(n)))
UPD.
В одну строку:
print(any(int(input()) == 0 for _ in range(int(input()))))
В одну строку максимально функциональный вариант от andreymal:
print(any(map(lambda x: x == 0, map(lambda _: int(input()), range(int(input()))))))
Автор решения: GinTR1k
→ Ссылка
Ребята, честно, не понимаю зачем вам тут лямбда и map.
any(int(element) == 0 for element in input().split())
