我在 Python 中有一个用于 2.x 版本的快速傅立叶变换函数。我想在 Python 3.x 中实现它,但是“xrange”和列表标识符存在一些问题(正如我的编译器所说)。我也不知道如何在不使用任何非标准库的情况下从我的 FFT 计算逆 FFT。代码如下。提前致谢...
from cmath import exp,pi
def FFT(X):
n = len(X)
w = exp(-2*pi*1j/n)
if n > 1:
X = FFT(X[::2]) + FFT(X[1::2])
for k in xrange(n/2):
xk = X[k]
X[k] = xk + w**k*X[k+n/2]
X[k+n/2] = xk - w**k*X[k+n/2]
return X
UPD:由于您的建议,完全重建了我的 FFT 和构建的 IFFT。PS如何关闭帖子?