j
це порожній список, але ви намагаєтесь записати елемент [0]
у першій ітерації, яка ще не існує.
Спробуйте скористатися наступним, щоб додати новий елемент до кінця списку:
for l in i:
j.append(l)
Звичайно, ти ніколи цього не робив би на практиці, якби все, що ти хотів зробити, було скопіювати наявний список. Ви просто зробите:
j = list(i)
Крім того, якщо ви хочете використовувати список Python як масив іншими мовами, тоді ви можете попередньо створити список з його елементами, встановленими на нульове значення ( None
у прикладі нижче), а пізніше перезаписати значення в конкретні позиції:
i = [1, 2, 3, 5, 8, 13]
j = [None] * len(i)
#j == [None, None, None, None, None, None]
k = 0
for l in i:
j[k] = l
k += 1
Слід усвідомити, що list
об’єкт не дозволить призначити значення індексу, який не існує.
append
є правильним рішенням для вашого випадку використання, однак у списку python є метод вставки, який може вставлятись безпосередньо на i-ту позицію в списку.j.insert(k, l)