Menu
CoddyTech

Срезы списков. Часть 2

Часть раздела Основы путешествия по Python на Coddy. Урок 65 из 77.

Срезы имеют ещё один параметр шага: lst[start:stop:step]. Например, рассмотрим этот список:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Получает каждый второй элемент с индекса 1 по 8:

print(numbers[1:8:2])
# Вывод: [1, 3, 5, 7]

Получает каждый третий элемент, начиная с индекса 2:

print(numbers[2::3])
# Вывод: [2, 5, 8]

Срезы также поддерживают отрицательные индексы.

Подсчёт с конца:

print(numbers[-3:])
# Вывод: [7, 8, 9]

Здесь -3 означает «начать с 3-й позиции с конца»

Считайте до конца:

print(numbers[:-2])    
# Вывод: [0, 1, 2, 3, 4, 5, 6, 7]

Здесь -2 означает «остановиться за 2 позиции до конца» (не включая конечную позицию)

Разворот с отрицательным шагом:

print(numbers[::-1])
# Вывод: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  • Пустое место перед первым : означает «начать с начала»
  • Пустое место между : означает «идти до конца»
  • -1 означает «двигаться назад по одному шагу за раз» 
challenge icon

Задание

Легко

Создайте программу, которая получает на вход список (given) и выводит три новых списка на основе следующих операций среза:

  • Список, содержащий каждый третий элемент, начиная с индекса 1 (второго элемента)
  • Список, содержащий все элементы от 6-го элемента до 1-го в обратном порядке
  • Список, содержащий каждый второй элемент, начиная с середины списка и до конца

Попробуйте сами

lst = input().split(",")
# Напишите ваш код ниже
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Python