使用numpy和matplotlib,函数通常允许数字(浮点或整数)或numpy数组作为参数,如下:
import numpy as np
print np.sin(0)
# 0
x = np.arange(0,4,0.1)
y = np.sin(x)
在这个例子中,我使用一个整数参数和一个numpy数组 x
分别调用np.sin函数。现在我想编写一个类似的函数来实现相同的操作,但我不知道如何实现。例如:
def fun(foo, n):
a = np.zeros(n)
for i in range(n):
a[i] = foo
return a
我希望能够像这样调用函数:fun(1, 5)
,但不能像这样:fun(x, 5)
。当然,我的实际计算要复杂得多。
如何初始化a
,使得它既可以是简单数字,也可以是由数字组成的数组元素?
非常感谢您的帮助!
a
不能是列表的原因是什么? - C_Z_fun(x,5)
中获得什么?x
的 5 个副本?数组的形状是什么? - hpaulja
是一个numpy数组。我想我可以将a
创建为列表,然后填充列表,最后写入a = np.array(a)
。但是难道没有更“简洁”的解决方案吗? - Daniel