Вопрос о питоне выведите количество элементов, которые делятся на
Мой код:-
list_1 = [i for i in range(1, 51)]
a=int(input())
list_1.remove(a)
count=0
for i in list_1:
if(i%a==0):
count=count+1
print(count)
но выход приходит именно так, когда вход 12
тогда выход приходит
1
2
3
но мне нужен выход 3 только так, как это сделать, пожалуйста, помогите
3 ответа
Ты можешь использовать sum
,
sum(x % a == 0 for x in list_1)
поскольку True == 1
а также False == 0
, это сумма к тому, сколько раз предикат верен.
Прервите оператор if и используйте конечное условие iei=50, например:
l=list(range(1,51))
a=int(input())
count=-1
for i in l:
if(i%a==0):
count=count+1
print(count)
print(len([i for i in list_1 if i%a == 0]))
это создает список с делимыми числами и получает длину списка. Я также укажу, что len() является функцией временной сложности O(1), то есть происходит только один цикл - из-за понимания списка - и палатки для понимания списка должны быть довольно быстрыми:)