Нарезка списков в Python

Я новичок в Python, может кто-то, пожалуйста, скажите мне разницу между выходом этих двух блоков кода:

1.

>> example = [1, 32, 1, 2, 34] >> example[4:0] = [122] >> example [1, 32, 1, 2, 122, 34] 

2.

 >> example = [1, 32, 1, 2, 34] >> example[4:1] = [122] >> example [1, 32, 1, 2, 122, 34] 

2 Solutions collect form web for “Нарезка списков в Python”

Ваша нарезка дает пустой список в индексе 4 потому что верхняя граница меньше нижней границы:

 >>> example[4:0] [] >>> example[4:1] [] 

Этот пустой список заменяется вашим списком [122] . Эффект такой же, как и при выполнении:

  >>> example.insert(4, 122) 

Просто помните, что пустые списки и списки с одним элементом ничего особенного, хотя эффекты, которые они имеют, когда вы их используете, в начале не так очевидны. Учебник Python содержит более подробную информацию.

Здесь нет ничего плохого. Результат тот же, поскольку единственная строка, которая отличается от двух программных snipets, – это

 example[4:0] = [122] 

а также

 example[4:1] = [122] 

Они оба добавят и присваивают значение 122 (я принимаю список значения размера один == здесь) к элементу после этого в индексе 4. Так как число в верхней границе среза меньше четырех в обоих случаях, они не имеют никакого эффекта.

  • Войдите на сайт, используя модуль Python Requests
  • Блокировка до закрытия файла в python
  • Ошибка Tensorflow с использованием моих собственных данных
  • Почему такое понимание списков происходит быстрее?
  • Юникодное регулярное выражение для соответствия символьному классу китайских символов
  • Ошибка при запуске awscli
  • Python 3.5 vs Python 2.7: Модули, импортирующие подмодули
  • Django Assign-perm w / Post-Save Signal
  • Python - лучший язык программирования в мире.