Я хочу добавить "100" в список, так что используемый метод добавления - PullRequest
1 голос
/ 20 сентября 2019

Хотите применить метод добавления в цикле for, чтобы добавить новое значение в список, но результат бесконечный.Я новичок в программировании.Ниже мой код.

a = [2, 3, "name",10]

for i in a:
    app = a.append(100)
    print(app) 

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019

append на самом деле работает, изменяя исходный список, а не возвращает список с добавленным элементом.Фактически, функция всегда возвращает None, как вы нашли.Если вместо этого вы напечатаете содержимое исходного списка, то есть print(a), а не print(app), вы увидите добавляемые элементы.

0 голосов
/ 20 сентября 2019

list.append() - метод мутации, который возвращает None.Другими словами, он изменяет список, но не возвращает список.Выполнение app = a.append(100) делает app ссылкой на результат None.

Измените

app = a.append(100)

на

a.append(100)
app = a # these now reference the same mutated list

Если вам не нужны дваимена для того же списка сбрасывают app = a.

Если, с другой стороны, вы хотите, чтобы a ссылался на исходный список, а app - на измененный список, тогда вы должны сделать

 app = a + [100]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...