Здесь используется список понимание. Это означает: возьмите мой список и для каждого элемента этого списка вычислите новое значение. Верните список новых элементов.
Например:
In [2]: a=[2,4,6]
In [3]: print [pow(2,x) for x in a]
[4, 16, 64]
После этого необходимо вычислить сумму элементов в списке. В Python есть функция, которая может суммировать все элементы в списке, который является его аргументом.
In [4]: sum([2,4,6])
Out[4]: 12
Теперь вы комбинируете понимание списка и sum
.
(try to guess)
Когда вы не можете такие конструкции, вы можете написать один и тот же более низкого уровня:
def sumPower(a):
s = 0
for x in a:
s += pow(2,x)
# (one line removed; try to guess what must be here)
Здесь вы перебирать a
, рассчитать мощность 2 и accumuluate его в переменной s
, Затем верните s
в результате выполнения функции.
Я немного изменил решение; Я спрятал код; просто попробуйте угадать это самостоятельно. Это очень легко, и, когда вы догадаетесь, это будет полезно для вас!
Здесь можно задать вопросы о домашней задаче, но вы должны попытаться показать, что вы пробовали, и где именно вы в тупике. –