Используйте [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 для этой задачи не требуется.