Создание массива с последовательными степенями двойки

Используйте [2 ** exponent for exponent in range(1, 11)]. Начинайте с показателя 1, поскольку первый элемент должен быть 2, а не 1.

Короткий ответ

Что ответить на собеседовании

Используйте [2 ** exponent for exponent in range(1, 11)]. Начинайте с показателя 1, поскольку первый элемент должен быть 2, а не 1.

Подробный разбор

Ответ с пояснениями

Условие

Сформируй массив, содержащий первые 10 элементов последовательности степеней двойки (2, 4, 8, 16 и т.д.).

Ответ

Используйте [2 ** exponent for exponent in range(1, 11)]. Начинайте с показателя 1, поскольку первый элемент должен быть 2, а не 1.

powers = [2 ** exponent for exponent in range(1, 11)]

Результат:

[2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]

Правая граница range не включается, поэтому показатель 10 входит при границе 11. Эквивалентный способ — начинать с 2 и десять раз добавлять текущее значение, удваивая его после каждого шага. Целочисленный оператор ** сохраняет точность; вещественное math.pow для этой задачи не требуется.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее