Когда вы говорите:
image = 1
Вы изменяете только значение переменной с именем image
;другими словами, вы привязываете имя image
к новому значению.Это никак не влияет на исходный список.
Более подробно: когда вы говорите for image in placement
, происходит то, что на каждой итерации for
-петля имя image
связывается со значением в соответствующей позиции в списке.Повторное присвоение ему только привязывает его к другому значению.
Указанный выше for
-эквивалент эквивалентен:
image = placement[0]
image = 1 # does not change placement[0]
image = placement[1]
image = 1 # does not change placement[1]
image = placement[2]
image = 1 # does not change placement[2]
image = placement[3]
image = 1 # does not change placement[3]
Чтобы изменить элементы в списке, вы можете назначить определенный индекс:
for i in range(len(placement)):
placement[i] = 1 # assigns into a specific position in the list, changing its contents