【发布时间】:2020-06-06 10:42:18
【问题描述】:
我最近在研究python,在构建调幅信号的时候,出现这个错误,据我了解,数据类型有问题,但不明白需要具体修复什么。下面我给出函数本身和它的工作代码
def signal_am(amp, km, fc, fs, period):
t = np.linspace(0, 1, 1000)
return (amp * (1 + km * np.cos(2*pi*fs*t)+2*sin(2*pi*f*t)) * np.cos(fc * t))
N = 1024
fs = 12
fc = 155
km = [0.5, 1, 1.7]
sig = [signal_am(amp=1.0, km=i, fc=fc, fs=fs, period=N) for i in km]
【问题讨论】:
-
@Snehil 你能告诉我如何修复我的代码以避免这种情况吗?
-
在return语句中,
f是什么? -
@MrFuppes 它的频率,整数
-
好的,如果您在函数中使用未作为参数传递的变量,如果它们在函数的外部命名空间中定义,它可能会起作用。但是,我认为更好的做法 将函数所需的所有内容作为参数传递。你的功能例如实际上并没有对
period做任何事情,那为什么要通过它呢?