Я был проинструктирован для предотвращения этого в программе Python, но откровенно я понятия не имею, как это даже возможно. Кто-то может дать пример того, как можно нарезать список и вставить что-то в него для создания его больше?Спасибо
>>> a = [1,2,3]
>>> a[:0] = [4]
>>> a
[4, 1, 2, 3]
a [: 0]
- это «фрагмент списка a
, начинающийся перед любыми элементами и заканчивающийся перед индексом 0», который изначально является пустым фрагментом (поскольку в исходном файле нет элементов список перед индексом 0). Если вы установите непустой список, это расширит исходный список этими элементами. Вы также можете сделать то же самое в любом другом месте списка, указав срез с нулевой шириной (или срез с ненулевой шириной, если вы хотите также заменить существующие элементы):
>>> a[1:1] = [6,7]
>>> a
[4, 6, 7, 1, 2, 3]
Чтобы этого не произошло, вы можете создать подкласс встроенного списка, а затем переопределить эти методы, подробности см. здесь