когда итерация списка Python является и не является ссылкой

Может кто-нибудь предложить краткое объяснение разницы между этими двумя операциями Python с точки зрения изменения списка?

demo = ["a", "b", "c"]

for d in demo:
    d = ""

print demo
#output: ['a', 'b', 'c']

for c in range(len(demo)):
    demo[c] = ""

print demo
#output: ['', '', '']

Другими словами, почему неt первой итерации изменить список? Спасибо!

Ответы на вопрос(3)

Ваш ответ на вопрос