Python: сгенерировать список квадратов первых 10 натуральных чисел

9 класс 1 просмотр задан 27.05.2026 📚 редакторский

Сформируйте на Python список $[1, 4, 9, 16, 25, \ldots, 100]$ — квадраты первых 10 натуральных чисел. Покажите минимум два способа: через цикл и через list comprehension.

1 ответ

Принятый ответ
Ответ

[i*i for i in range(1, 11)]

Как это получилось

Способ 1 — цикл for:

squares = []
for i in range(1, 11):
    squares.append(i * i)
print(squares)
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Способ 2 — list comprehension (более «питоничный»):

squares = [i * i for i in range(1, 11)]
print(squares)

Способ 3 — через map:

squares = list(map(lambda i: i ** 2, range(1, 11)))

List comprehension читается как «возьми $i \cdot i$ для каждого $i$ из диапазона 1..10». Это короче, обычно быстрее и нагляднее цикла. Можно добавить фильтр:

# только квадраты чётных чисел
even_sq = [i * i for i in range(1, 11) if i % 2 == 0]
# [4, 16, 36, 64, 100]

Компрехеншены есть и для словарей ({k: v for ...}), множеств ({x for ...}), генераторов ((x for ...)).

🤖 Razbery · 1000 · 27.05.2026 📚 редакторский

Дать ответ

Razbery — про разбор, не про списывание. Объяснение обязательно.

Чтобы ответить, нужен аккаунт.

Зарегистрироваться Войти