JavaRush /Курсы /Модуль 1: Python Core /Работа со списком

Работа со списком

Модуль 1: Python Core
5 уровень , 1 лекция
Открыта

2.1 Определение длины списка

Теперь, когда мы научились создавать списки, следующая задача — определить количество элементов в списке. В Python для этого используется специальная функция — len().

Пример использования функции len():


my_list = [10, 20, 30, 40]
print(len(my_list))  # Выведет 4

В функцию len() можно передать как переменную, содержащую список, так и сам список непосредственно. Примеры:


print(len([]))  # Выведет 0
print(len([1, 2, 3]))  # Выведет 3
print(len([[1, 2, 3]]))  # Выведет 1

Функция len() очень эффективна и может быстро справляться даже с очень большими списками, так как Python хранит информацию о размере списка в самом объекте списка.

2.2 Функция type()

Если вы не уверены, является ли переменная списком, можно воспользоваться функцией type().

Пример:


my_list = [1, 2.5, 'string', [3, 4]]
print(type(my_list))  # Выведет: <class 'list'>

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


my_list = [1, 2.5, 'string', [3, 4]]
if type(my_list) == list:
    print("Список!")  # Выведет: Список!

2.3 Получение элемента: [index]

Мы научились определять длину списка, теперь давайте разберём, как работать с его элементами. Список в Python — это упорядоченная коллекция элементов, где каждый элемент имеет свой индекс, начиная с нуля.

Важно! Номер элемента в списке в Python (как и во многих языках программирования) принято называть индексом. Чтобы не путаться, помните, что первый элемент имеет индекс 0, второй — 1 и т.д. Если в списке у вас 10 элементов, то они будут иметь индексы от 0 до 9.

Чтобы обратиться к элементу списка, используйте квадратные скобки с индексом элемента. Общий вид такой операции:


Список[индекс]

Пример:


my_list = [10, 20, 30, 40, 50]
print(my_list[0])  # Выведет 10
print(my_list[1])  # Выведет 20
print(my_list[2])  # Выведет 30

Так же, как и при работе со строками, списки поддерживают отрицательные индексы.

Получение последнего элемента списка:


my_list = [10, 20, 30, 40, 50]
print(my_list[-1])  # Выведет 50

Получение предпоследнего элемента списка:


my_list = [10, 20, 30, 40, 50]
print(my_list[-2])  # Выведет 40
2
Задача
Модуль 1: Python Core, 5 уровень, 1 лекция
Недоступна
Произвольная программа
Произвольная программа
2
Задача
Модуль 1: Python Core, 5 уровень, 1 лекция
Недоступна
Пятый элемент.
Пятый элемент.
Комментарии (10)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
bbirdy Уровень 13
9 мая 2025
валидатор иногда не засчитывает правильное решение, и нужно отправить на проверку еще раз и еще раз, и на третий срабатывает
DKlaim Уровень 14
21 марта 2025
Что не так в моём коде?

import random
my_list = []

def random_value():
    return random.randint(1, 10)

for _ in range(random_value()):
    my_list.append(random_value())

print(f'Длинна списка: {len(my_list)}')
print(f'Первый элемент списка: {my_list[0]}')
print(f'Последний элемент списка: {my_list[-1]}')
Виталий Уровень 31
19 апреля 2025
Может в выводе не нужен текст, а необходимо вывести только элементы списка?
Peter Уровень 12
16 мая 2025
Предположу что проблема вот в этой строке.

for _ in range(random_value()):
По заданию список должен состоять из нескольких. У вас же может быть длина списка из 1 элемента. Можно попробовать задать константу, например =10.
23 июля 2025
Решил не мудрствовать лукаво, исходя из ТЗ :) my_list = ['жопа', 2.78, False, [5, 7, 9], 'мартышки'] print(len(my_list)) print("Первый элемент:", my_list[0]) print("Последний элемент:", my_list[-1])
Valentin Уровень 11
17 января 2025
Хм, использовал два цикла один для запроса элементов списка, второй для их вывода относительно индекса. На что получил ответ от авто проверки "Использование цикла while приводит к повторному запросу индекса, даже если он корректен. Необходимо вызывать запрос индекса и печатать элемент только один раз после основного списка." Но нигде не сказано что программа должна завершить работу и не давать пользователю возможность ввести данные снова. Еще одна странная штука это то что у пользователя просят ввести индекс а не номер элемента.
Zlopyhatel Уровень 0
21 декабря 2024
print(len([])) # Выведет 0 print(len([1, 2, 3])) # Выведет 3 print(len([[1, 2, 3]])) # Выведет 1 - почему выдет 1? что делают эти скобки? в чем смысл учебы, если вы не даете материал нормально, а задачи даете по тому, что не дали?
Falcon Уровень 11
23 декабря 2024
print(len([[1, 2, 3]])) Внутри списка содержится один элемент, представляющий из себя список [1, 2, 3]. Поэтому и выводится в консоль 1. То, что элементом списка может быть список, - говорилось ранее. Возможно, что понятнее был бы такой вариант: print(len([4, 'Привет', [1, 2, 3], 'Яблоко'])) Результат вывода в консоль - 4.
NAXIK Уровень 13
11 декабря 2024
сегодня 3 день, пока очень легко, немного настораживает
Kanat Badigulov Уровень 64
12 декабря 2024
тоже есть такое чувство(