我只是在新Mac上设置python和PyCharm。我有一些我想运行的代码,它使用 numpy 和 scipy。使用终端,我创建了一个虚拟环境并激活了它:source ~/PycharmProjects/TernaryTest/venv/bin/activate
.
我在 PyCharm IDE 中导航到此环境,尝试运行我的程序(导入 numpy 但尚未导入 scipy),并遇到错误:ModuleNotFoundError: No module named 'numpy'
.
此时,我返回终端,导航到虚拟环境并激活它,然后运行:pip3 install numpy
.该程序在PyCharm中运行没有问题。现在我修改代码以要求导入 scipy:
import numpy
import scipy
...
同ModuleNotFoundError: No module named 'scipy'
.我重复了适用于 numpy 的过程,但继续收到相同的错误。
尝试在虚拟环境中额外使用 pip3 次以获得 scipy 结果:
Requirement already satisfied: scipy in ./PycharmProjects/TernaryTest/venv/lib/python3.7/site-packages (1.4.1)
Requirement already satisfied: numpy>=1.13.3 in ./PycharmProjects/TernaryTest/venv/lib/python3.7/site-packages (from scipy) (1.18.1)
此外,scipy在PyCharm IDE中显示为安装在站点包目录中,与numpy一起。重新启动各种程序不会导致任何改进的行为。
有人可以帮我纠正这种情况吗?谢谢!
你有没有尝试强迫?
pip3 install --force-reinstall scipy
这不是一个令人满意的答案,而是我让代码运行的方式:
deactivate venv
pip3 install scipy
然后,我重新激活 venv 并且代码有效。诚然,这没有多大意义,因为我需要在虚拟环境中使用 scipy,但必须退出环境才能成功安装。