【发布时间】:2021-12-29 19:49:41
【问题描述】:
我收到以下代码的类型错误:
import random
def f(x):
return x**2
def Sample(npts):
sample = []
# Generate random numbers from 0 to 10.
randomlist = []
for _ in range(npts): # just counting from 0 to npts-1
r = random.random() # random.random() generates numbers from 0 to 1, including 0.2 etc.
r *= 10 # convert to 0 to 10 range
assert r >= 0 and r <= 10, "random number r should be in [0, 10]" # verify that r is in [0, 10]
randomlist.append(r) # save to a list
# Save result of function f
for v in randomlist: # get each item in the list
y = f(v)
sample.append(y)
return sample
# start
npts = 100
result = Sample(npts)
print(f'result length: {len(result)}')
print(f'result: {result}')
我认为这是因为我试图在 int 和 list 之间进行检查。我了解到您可以使用 numpy 按预期计算它,但是,我不太明白,所以如果有人可以向我解释,我将非常感激。
【问题讨论】:
-
我收到
SyntaxError: 'return' outside function。请正确格式化您的代码。 -
抱歉,粘贴到这里后忘记缩进了
标签: python arrays function loops math