0
data = [11,1,1,1,33,1,1,1,133,44,55]
for each in data:
    if each == 1:
        data.remove(1)
print(data)

OUTPUT:

[11, 33, 1, 1, 133, 44, 55]
Adelin
  • 7,269
  • 5
  • 36
  • 62

1 Answers1

2

You should avoid modifying an iterable while iterating, since you're messing up the indexing.

Use list comprehensions to easily filter data:

[i for i in data if i!=1.]
# [11, 33, 133, 44, 55]

Or:

new_list = []
for each in data:
    if each != 1:
        new_list.append(each)
yatu
  • 80,714
  • 11
  • 64
  • 111