В этом l oop:
for i in list1:
i=int(i)
Изменение i
в l oop не влияет на список. На каждой итерации l oop для i
устанавливается следующий элемент list1
. Вы можете назначить все, что вы хотите, не влияя на список. Он ничем не отличается от:
i = list1[ix]
i = 123
Это явно не повлияет на list1
по той же причине.
Если вы хотите изменить список, вы можете сделать:
for i in range(len(list1)):
list1[i] = int(list1[i])
Это изменит элементы list1
.
Другой подход будет следующим:
list1 = [int(i) for i in list1]
Это не изменит список, на который ссылается list1
, но вместо этого он создает новый список, а затем присваивает его list1
. Любые другие ссылки на старый list
останутся без изменений, но list1
теперь будет ссылаться на новый список, который содержит измененные значения.