Каким будет результат работы следующей программы:
numbers = [1, 2, 3, 4, 5] new_numbers = [i * i for i in numbers if i % 2 == 0] print(new_numbers)
Варианты ответов:
[1, 4, 9, 16, 25]
[4, 16]
[2, 4, 6, 8, 10]
Ничего из выше перечисленного
При выполнении программа выведет на консоль [4, 16]
.
Выражение
[i * i for i in numbers if i % 2 == 0]
Выбирате в переменную i все элементы из списка numbers, которые делятся на 2 без остатка.
for i in numbers if i % 2 == 0
В списке numbers таких чисел только два: 2 и 4. Затем выбранные числа умножаются на себя, и из результатов формируется список new_numbers, который равен [4, 16]
.