我有一个数值模拟程序,在我所在的研究所运行良好,我有一个 Win10 盒子,我在其中安装了 Python 3.7.3 64 位。我正在尝试使用 Manjaro 和 Python 3.8.1 在我的笔记本电脑上运行相同的程序(我安装它时它也是 3.7.3,但滚动发布 ¬¬)。问题是在我的笔记本电脑中尝试导入 pyFFTW 时出现以下错误
Traceback (most recent call last):
File "/home/User/Documents/Program.py", line 22, in <module>
import pyfftw # Pythonic wrapper for FFTW
File "/usr/lib/python3.8/site-packages/pyfftw/__init__.py", line 43, in <module>
from . import interfaces
File "/usr/lib/python3.8/site-packages/pyfftw/interfaces/__init__.py", line 237, in <module>
from . import scipy_fftpack
File "/usr/lib/python3.8/site-packages/pyfftw/interfaces/scipy_fftpack.py", line 65, in <module>
from scipy.fftpack import (dct, idct, dst, idst, diff, tilbert, itilbert,
ImportError: cannot import name '_fftpack' from 'scipy.fftpack' (/usr/lib/python3.8/site-packages/scipy/fftpack/__init__.py)
Process finished with exit code 1
据我所知,问题是由 pyFFTW 包本身的库引起的,但我不知道如何解决它。我尝试卸载并重新安装 pyFFTW (1.17.4) 和 scipy (1.4.1),但收效甚微。
我认为我可以在我的 Manjaro 框中安装 Python 上的另一个版本,并简单地“匹配”Win 框中的所有版本的包,但我正在寻找一个更少核的解决方案。
为了完整起见,MWE:
$ python
>>> import pyfftw