🏃 Задания для закрепления 1: создание списков
Вопрос 1. Что можно хранить в списке в Python?
- a. Только строки
- b. Только числа
- c. Только числа и строки
- d. Элементы разных типов данных
Ответ: d — список может содержать элементы любых типов.
Вопрос 2. Какой результат выведет следующий код?
my_list = list()
print(my_list)
- a.
[] - b.
[None] - c.
list() - d. Ошибка
Ответ: a — list() создаёт пустой список.
🏋️ Задания для закрепления 2: индексация и срезы
Вопрос 1. Какой результат выведет следующий код?
my_list = [1, 2, 3, 4]
print(my_list[2])
- a. 1
- b. 2
- c. 3
- d. 4
Ответ: c — индексация с нуля, элемент с индексом 2 равен 3.
Вопрос 2. Какой результат выведет следующий код?
my_list = [0, 1, 2, 3, 4, 5]
print(my_list[::-1])
- a.
[0, 1, 2, 3, 4, 5] - b.
[5, 4, 3, 2, 1, 0] - c.
[0, -1, -2, -3, -4, -5] - d. Ошибка
Ответ: b — срез с шагом -1 переворачивает список.
Вопрос 3. Какое значение будет в списке my_list после выполнения кода?
my_list = ["a", "b", "c", "d"]
my_list[1] = 0
print(my_list)
- a.
['a', 'b', 'c', 'd'] - b.
['a', 0, 'c', 'd'] - c.
['0', 'b', 'c', 'd'] - d.
['a', 0, 'c', 'd']
Ответ: b — элемент с индексом 1 заменяется на целое число 0.
🧮 Задания для закрепления 3: операции со списками
Вопрос 1. Какой результат выведет следующий код?
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined_list = list1 + list2
print(combined_list)
- a.
[1, 2, 3, 4, 5, 6] - b.
[4, 5, 6, 1, 2, 3] - c.
[1, 2, 3], [4, 5, 6] - d. Ошибка
Ответ: a — оператор + конкатенирует списки в порядке следования.
Вопрос 2. Какой результат выведет следующий код?
my_list = [0] * 4
print(my_list)
- a.
[4] - b.
[1, 1, 1, 1] - c.
[0] - d.
[0, 0, 0, 0]
Ответ: d — оператор * повторяет список 4 раза.
Вопрос 3. Какой результат выведет следующий код?
my_list = [1, 2, 3, 4, 5]
print(6 in my_list)
- a.
True - b.
False - c. Ошибка
- d. Ничего не выведется
Ответ: b — число 6 отсутствует в списке, поэтому результат False.
🔁 Задания для закрепления 4: вложенные циклы
Вопрос 1. Какой результат выведет следующий код?
my_strings = ["cat", "dog"]
for word in my_strings:
for letter in word:
print(letter, end="")
print()
- a.
c a t d o g - b.
catdog - c.
c a t d o g - d.
cat\ndog
Ответ: d — внутренний цикл печатает буквы слова без разделителя, затем print() переводит строку. В итоге вывод: cat на одной строке и dog на следующей.
🏋️ Раздел тренировки
В этом разделе вы пошагово выполните 2 практических задания из занятия: от создания файла до рабочей программы в VS Code.
📂 Подготовка проекта
- Создайте папку урока внутри
python-fundamentals-practice/lesson-18/. - Активируйте виртуальное окружение.
- Создайте файлы
task_01_divisible_by_three.pyиtask_02_names_above_average.py.
Задание 1. Список чисел
Условие: напишите программу, которая сохраняет в список все числа от 0 до n (введённого пользователем), которые делятся на 3. Выведите эти числа на экран.
Что должно получиться:
Введите число: 15
0
3
6
9
12
15
Подсказка: используйте range(n + 1) и проверку i % 3 == 0. Для добавления элемента в список используйте my_list.append(value).
Задание 2. Список имён
Условие: напишите программу, которая обрабатывает список строк, состоящий из имён. Нужно вывести только те имена, длина которых больше средней длины имён в списке.
Пример данных для обработки:
names = ["John", "Bob", "Alice", "Anna", "Mark"]
Что должно получиться:
Список имён: ['John', 'Bob', 'Alice', 'Anna', 'Mark']
Средняя длина имён: 4.0
Имена длиннее средней длины:
Alice
Подсказка: накопите сумму длин имён в цикле, разделите на len(names), затем снова пройдите по списку и выведите имена, длина которых больше средней.