1. Как вы думаете, почему в языке Python нет массивов, а вместо них используются списки?
В Python нет массивов в том же смысле, что в языках C++ или Java, потому что списки Python более гибкие и универсальные. Массивы обычно имеют фиксированный размер и тип данных, в то время как списки Python динамически изменяют свой размер и могут содержать элементы разных типов. Эта гибкость делает списки удобнее для большинства задач, хотя для задач, требующих высокой производительности и строго типизированных данных, в Python используются массивы NumPy (которые являются отдельной структурой данных).
2. Какие способы создания списков вы знаете?
Литерал списка: my_list = [1, 2, 3, "hello"] Конструктор списка: my_list = list((1, 2, 3)) Генератор списка: my_list = [i for i in range(5)] Функция list() из итерируемых объектов: my_list = list("hello")
3. Зачем нужны генераторы списков с условием?
Генераторы списков с условием позволяют создавать списки, фильтруя элементы на основе определенного критерия. Это делает код более компактным и эффективным, чем использование циклов с условными операторами.
4. Как построить массив, состоящий из 15 единиц, с помощью генератора списка?
Массив из 15 единиц с помощью генератора списка: array = [1] * 15 или array = [1 for _ in range(15)]
5. Как обращаться к отдельному элементу массива?
Обращение к отдельному элементу списка: element = my_list[index], где index – это номер элемента (индексация начинается с 0).
6. Как ввести массив с клавиатуры?
array = [] n = int(input("Введите количество элементов: ")) for i in range(n): element = int(input(f"Введите элемент {i+1}: ")) array.append(element)
7. Как вывести массив на экран? Приведите разные варианты решения этой задачи. Какой из них вам больше нравится?
Вариант 1 (простой цикл): for element in array: print(element) Вариант 2 (функция print() с разделителем): print(*array) # Распаковка списка для вывода элементов через пробел Вариант 3 (форматированный вывод): print(", ".join(map(str, array))) # Преобразование элементов в строки и соединение через запятую Мне больше нравится вариант 2, он наиболее компактен и удобен.
8. Как заполнить массив случайными числами в диапазоне от 100 до 200?
import random array = [random.randint(100, 200) for _ in range(n)] # n - количество элементов
9. С помощью каких функций можно найти сумму и количество элементов массива?
Сумма: sum(array) Количество элементов: len(array)
10. Сравните разные способы решения задачи о среднем росте игроков. Какой из них вам больше нравится? Обсудите этот вопрос в классе.