Я пишу простую функцию, чтобы вынуть любые нечетные числа из списка и вернуть список только четных.Как отфильтровать список
def purify(numbers):
for i in numbers:
if i%2!=0:
numbers.remove(i)
return numbers
print purify([4,5,5,4])
при нанесении выше
он возвращает: [4, 5, 4] , почему оленья кожа второй 5 удаляются, поскольку она также justifys КРП?
Im ищет меньше для другого метода проблемы и больше, чтобы понять, почему это происходит.
спасибо и извините, если это глупо д .. Джо
Я знаю, что это дубликат, к сожалению. – squiguy
Код в 'purify' должен быть отступом, иначе он не будет работать. –
, если список длинный, вы можете избавиться от дубликатов с помощью номера = list (set (numbers)) перед сканированием. В этом примере это не стоит, но для больших наборов данных было бы неплохо устранить избыточные проверки перед началом – theodox