Я пытаюсь разбить список по 2 раза за раз (в 10 раз) и выполнять операцию на каждом из раздела. Я хочу выполнить эту операцию в списке с соотношением 1: 9 за раз. Это означает, что я разделил список на 10 раз, и на первой итерации я выполню операцию в первой сгибе и оставшейся 9, во второй итерации я выполню ее во втором складе и оставшемся 9 и так далее. А затем переназнайте копию списка на следующую итерацию. Вот простой пример проблемы: < /p>
Код: Выделить всё
>>> a = ['a', 'b', 'c', 'd', 'e', 'f']
>>> b = a
>>> b
['a', 'b', 'c', 'd', 'e', 'f']
>>> for i in xrange (len(a)):
del (b [i])
b = a
Traceback (most recent call last):
File "
", line 2, in
del (b [i])
IndexError: list assignment index out of range
Похоже, что как , так и b указывают на то же место в памяти, и есть только одно местоположение, в котором хранится фактическое содержание списка. Не могли бы вы сказать мне, в чем проблема и как я могу ее решить?
Подробнее здесь:
https://stackoverflow.com/questions/144 ... g-the-list