Подтвердить что ты не робот

Python: как вы вставляете в список, нарезая?

Мне было поручено не допускать этого в программе Python, но, честно говоря, я понятия не имею, как это возможно. Может ли кто-нибудь дать пример того, как вы можете нарезать список и вставить что-то в него, чтобы сделать его больше? Благодаря

4b9b3361

Ответ 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

Чтобы этого не произошло, вы можете подклассифицировать встроенный список, а затем переустановить эти методы для получения подробной информации здесь