Menu
Coddy logo textTech

Срезы списков. Часть 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

Задание

Легко

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

  • list, содержащий every third element, начиная с index 1 (the second element)
  • list, содержащий all the elements от 6th element до 1st в обратном порядке
  • list, содержащий every second element, начиная с middle list и до конца

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

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

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

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

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