Scroll to Top

← Назад

📋 Списки [list]

Список - это структура данных, которая хранит несколько значений в одной переменной. Элементы списка идут по порядку и имеют индексы (как у строк).

🧺 1. Создание списка

Список создаётся в квадратных скобках [].

numbers = [1, 2, 3, 4]
words = ["кот", "пёс", "лиса"]
mixed = [10, "Hello", True, 3.14]
empty = []

🔹 Важно

  • В списке могут быть элементы разных типов.
  • Порядок элементов важен.
  • Список можно изменять (он изменяемый).

🔍 2. Индексы и доступ к элементам

Индексация начинается с 0.

fruits = ["яблоко", "банан", "груша"]

print(fruits[0])   # яблоко
print(fruits[1])   # банан
print(fruits[-1])  # груша (последний элемент)

🔹 Изменение элемента по индексу

fruits[1] = "киви"
print(fruits)  # ['яблоко', 'киви', 'груша']

✂️ 3. Срезы (slices)

Срезы работают так же, как у строк: list[start:stop:step].

nums = [0, 1, 2, 3, 4, 5, 6]

print(nums[1:4])   # [1, 2, 3]
print(nums[:3])    # [0, 1, 2]
print(nums[3:])    # [3, 4, 5, 6]
print(nums[::2])   # [0, 2, 4, 6]
print(nums[::-1])  # [6, 5, 4, 3, 2, 1, 0]

➕ 4. Операции со списками

🔹 Длина списка - len()

a = [10, 20, 30]
print(len(a))  # 3

🔹 Объединение списков

a = [1, 2]
b = [3, 4]
c = a + b
print(c)  # [1, 2, 3, 4]

🔹 Повторение

x = [0] * 5
print(x)  # [0, 0, 0, 0, 0]

🔹 Проверка наличия элемента in

colors = ["red", "green", "blue"]
print("green" in colors)  # True
print("black" in colors)  # False

🛠️ 5. Методы списков

🔹 Добавление элементов

Метод Что делает Пример
.append(x) Добавляет элемент в конец a.append(5)
.extend(lst) Добавляет все элементы другого списка a.extend([1,2])
.insert(i, x) Вставляет элемент по индексу a.insert(0, 99)
a = [1, 2, 3]
a.append(4)            # [1, 2, 3, 4]
a.extend([5, 6])       # [1, 2, 3, 4, 5, 6]
a.insert(1, 100)       # [1, 100, 2, 3, 4, 5, 6]
print(a)

🔹 Удаление элементов

Метод Что делает Важно
.pop() Удаляет и возвращает последний Можно указать индекс: .pop(0)
.remove(x) Удаляет первое вхождение x Ошибка, если x нет
.clear() Очищает список Делает []
nums = [10, 20, 30, 20]

last = nums.pop()
print(last)  # 20
print(nums)  # [10, 20, 30]

nums.remove(20)
print(nums)  # [10, 30]

nums.clear()
print(nums)  # []

🔹 Поиск и сортировка

Метод Что делает
.index(x) Возвращает индекс элемента
.count(x) Считает, сколько раз встречается
.sort() Сортирует список (меняет его)
sorted(lst) Сортирует и возвращает новый список
a = [3, 1, 2, 1]

print(a.count(1))   # 2
print(a.index(2))   # 2

a.sort()
print(a)            # [1, 1, 2, 3]

b = sorted([5, 2, 9])
print(b)            # [2, 5, 9]

🔁 6. Перебор списка циклом for

nums = [10, 20, 30]

for x in nums:
    print(x)

🔹 Перебор с индексом: enumerate()

names = ["Аня", "Борис", "Катя"]

for i, name in enumerate(names):
    print(i, name)

📌 Вывод:

0 Аня
1 Борис
2 Катя

🧠 7. Списки и ввод данных

Часто нужно собрать несколько значений от пользователя.

🔹 Пример: ввод (n) чисел

n = int(input("Сколько чисел? "))
nums = []

for _ in range(n):
    x = int(input("Введите число: "))
    nums.append(x)

print(nums)



🎓 Задания

🧪 1) Найти максимум и минимум

Пользователь вводит (n), затем вводит (n) целых чисел.

Программа должна: - сохранить числа в список - вывести минимальное и максимальное значение

Пример ввода

Сколько чисел? 5
Введите число: 10
Введите число: -2
Введите число: 7
Введите число: 7
Введите число: 3

Пример вывода

Минимум: -2
Максимум: 10
Решение:
n = int(input("Сколько чисел? "))
nums = []

for _ in range(n):
    nums.append(int(input("Введите число: ")))

print(f"Минимум: {min(nums)}")
print(f"Максимум: {max(nums)}")



🧪 2) Удалить все нули

Пользователь вводит список чисел (вводим (n), затем (n) чисел).

Программа должна: - удалить из списка все элементы, равные 0 - вывести новый список

Пример ввода

Сколько чисел? 6
Введите число: 0
Введите число: 5
Введите число: 0
Введите число: 2
Введите число: 0
Введите число: 7

Пример вывода

Результат: [5, 2, 7]
Решение:
n = int(input("Сколько чисел? "))
nums = []

for _ in range(n):
    nums.append(int(input("Введите число: ")))

result = []
for x in nums:
    if x != 0:
        result.append(x)

print(f"Результат: {result}")



🧪 3) Среднее значение

Пользователь вводит (n) и затем (n) чисел.

Программа должна: - вычислить среднее арифметическое - вывести результат (можно с 2 знаками после запятой)

Пример ввода

Сколько чисел? 4
Введите число: 10
Введите число: 20
Введите число: 30
Введите число: 40

Пример вывода

Среднее: 25.00
Решение:
n = int(input("Сколько чисел? "))
nums = []

for _ in range(n):
    nums.append(int(input("Введите число: ")))

avg = sum(nums) / n
print(f"Среднее: {avg:.2f}")

Материал для учеников

Этот раздел доступен только ученикам Ника

Чтобы получить доступ, свяжитесь с преподавателем