вводится последовательность, надо подсчитать произведение пятых степеней чисел в этой последовательности.
например
ввод 1 1 2 1
вывод 32
from numpy import product
print(product(lambda x : x**5, map(int, input().split())))
TypeError: 'function' object is not iterable
Ответ
Используйте преимущества Numpy - векторизированные функции:
import numpy as np
In [8]: inp = '1 1 2 1'
In [9]: a = np.array(inp.split()).astype(int)
In [10]: a
Out[10]: array([1, 1, 2, 1])
In [11]: np.power(a, 5).sum()
Out[11]: 35
In [12]: np.power(a, 5).prod()
Out[12]: 32
In [13]: np.power(a, 5)
Out[13]: array([ 1, 1, 32, 1], dtype=int32)
In [14]: a ** 5
Out[14]: array([ 1, 1, 32, 1], dtype=int32)
Если вам всенепременно надо все одним выражением сделать:
In [16]: np.power(np.array(input().split()).astype(int), 5).prod()
1 1 2 1
Out[16]: 32
Комментариев нет:
Отправить комментарий