Найти и вывести все числа, которые присутствуют в списке более одного раза.
пытаюсь написать ее вот так
def fun(a): for c in a: if c in b: b.append(c) return b print(fun([33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5]))
def fun(a): for c in a: if c in b: b.append(c) return b print(fun([33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5]))
# def fun(a): return [element for element in a if a.count(element) > 1]
# def fun(a): b = [] for c in a: if a.count(c) > 1 and not c in b: b.append(c) return b print(fun([33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5]))
def fun(a): b = [] for c in a: if c not in b: b.append(c) return b print(fun([33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5]))
aleks14
Найти и вывести все числа, которые присутствуют в списке более одного раза.
>>> a = [33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5] >>> filter(lambda x: a.count(x) > 1, a) [33, 5, 0, 33, 0, 5]
aleks14
помогите ее написать не используя встроенные функции.кроме def
>>> a = [33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5] >>> [ x for x in a if a.count(x) > 1 ] [33, 5, 0, 33, 0, 5]

4kpt_IV
Но в этом случаем могут быть повторения…
>>> a = [33, -1, 5, 2, 0, 33, 11, 0, -2, 77, 5] >>> set( x for x in a if a.count(x) > 1 ) set([0, 33, 5])