0

I am having some trouble while removing even integers from a list in Python. This is what I am trying to do but I can't figure out what am I doing wrong. Is the array skipping elements due to items being removed? I would really appreciate some help.

def removeEven(l):
for e in l:
    if e % 2 == 0:
        l.remove(e)
print(l)
Usama Ahmed
  • 21
  • 1
  • 4
  • See https://stackoverflow.com/questions/6260089/strange-result-when-removing-item-from-a-list-while-iterating-over-it – vaizki Jan 19 '22 at 15:27

1 Answers1

0

Try filter:

def removeEvent(l):
    return list(filter(lambda x: x % 2 == 0, l))
print(removeEvent(l))

Or even better:

print(list(filter(lambda x: x % 2 == 0, l)))
Andrey
  • 400
  • 2
  • 8