Мне было поручено не допускать этого в программе Python, но, честно говоря, я понятия не имею, как это возможно. Может ли кто-нибудь дать пример того, как вы можете нарезать список и вставить что-то в него, чтобы сделать его больше? Благодаря
Python: как вы вставляете в список, нарезая?
Ответ 1
>>> 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]
Ответ 2
Чтобы этого не произошло, вы можете подклассифицировать встроенный список, а затем переустановить эти методы для получения подробной информации здесь