私はPythonを初めて使用し、HW割り当てを実行しようとしていますが、このエラーが返され続けます(iPython Notebookで):
"TypeError: unsupported operand type(s) for ** or pow(): 'list' and 'float'"
これが私が模倣しようとしている式です: h(x)=(1/√2π)*e^−(1/2)^x^2
import numpy as np
import math
from math import *
def h_scalar(x):
return (1 / sqrt(2 * pi)) * exp(-.50** x ** 2.00)
先生と同じ成績を残そうとしています。
l = [-10.0, -1.0, 0.0, 1.0, 10.0] #
print h_scalar(l)
>>> [1.4867195147342977e-06, 0.24197072451914337, 0.3989422804014327,
0.24197072451914337, 1.4867195147342977e-06]
ところで、教師の質問は次のとおりです。
まず、h_scalar という関数を書きます。この関数は、リスト (または一般的に反復可能な項目) を想定する必要があります。リストには浮動小数点値が含まれていることが期待されます。入力リストの各 x 値の h(x) である float の新しいリストを返す必要があります。関数に h_scalar() という名前を付ける必要があります