2012-07-02 2 views
-3

Может ли кто-нибудь показать мне, как я могу это сделать? Благодарю.Добавление полномочий. Полностью тупик на этом

Программе необходимо определить функцию sumPower, которая должна принять список чисел. Функция sumPower должна затем использовать каждый элемент в списке как показатель степени числа 2. Эта функция должна добавить эти полномочия и вернуть сумму. Вы также должны убедиться, чтобы написать основную программу с заявлением, как:

печати (sumPower ([2,4,6]))

+2

Здесь можно задать вопросы о домашней задаче, но вы должны попытаться показать, что вы пробовали, и где именно вы в тупике. –

ответ

3

Здесь используется список понимание. Это означает: возьмите мой список и для каждого элемента этого списка вычислите новое значение. Верните список новых элементов.

Например:

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 в результате выполнения функции.

Я немного изменил решение; Я спрятал код; просто попробуйте угадать это самостоятельно. Это очень легко, и, когда вы догадаетесь, это будет полезно для вас!

+4

Так как это, во всяком случае, домашнее задание, как насчет удаления окончательного ответа? Остальное ваше пошаговое руководство полезно для ученика. –

+1

@MichaelPetrotta: сделано! –

Смежные вопросы