2

我有一个数值模拟程序,在我所在的研究所运行良好,我有一个 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
4

1 回答 1

1

这是在master中修复的。应尽快发布。您可以等待,也可以从 github 中提取。

编辑:发布于 2020 年 2 月 3 日修复此问题。

于 2020-01-29T09:52:13.363 回答