我正在尝试安装 SimPy 模块,以便可以在 IDLE 中使用它。但是,每次我尝试在 IDLE 中导入时,都会出现错误。我已经尝试重新安装 Python 和 Pip 并尝试修改应用程序的位置。 SimPy可以在Python 2.7的目录中找到。我正在使用 python 3.6.1。
在终端中正确安装 simpy 后:
pip install simpy
Requirement already satisfied: simpy in /Library/Python/2.7/site-packages
当我进入空闲状态时:
Import Simpy
我收到错误:
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
import simpy
ModuleNotFoundError: No module named 'simpy'
我该如何解决这个问题?
由于您使用的是 python 3.6.1,因此您可能需要指定要安装 simpy 的 python 类型。尝试运行
pip3 install simpy
将 simpy 模块安装到你的 python3 库中。
无论您在哪里运行代码,都可以尝试这个
import sys
sys.path
sys.executable
有可能您在一个环境中运行 python,而该模块安装在另一环境中。
对我有用的是将模块位置添加到 sys.path
import sys
sys.path.insert(0, r"/path/to/your/module")
当这种情况发生在我身上时(在 macOS 上),问题是我在 script.py 顶部指定的 python 安装与 conda/pip 在命令行上使用的 python 安装不同。
为了使命令行和我的脚本匹配,我将 script.py 中的标题更改为仅使用:
#!python
然后当我在命令行上运行
./script.py
时,一切终于正常了。
这个命令对我来说适用于同样的问题。
python -m pip install “your library”
我遇到了同样的问题(在 Windows 上),我的情况的根本原因是 ANTIVIRUS 软件!它具有“自动包含”功能,用某种虚拟机包装正在运行的进程。
症状是相同的:
pip install <module>
在一个命令行窗口中工作正常,而 import <module>
在从另一个进程执行时失败。
我自己写了一个包,我以为
__init__.py
可以忽略,然后就遇到了这个问题。当我在包裹中添加一个空的__init__.py
时,这个问题就得到了解决。
当前工作目录中没有名为
simpy.py
的文件,因为 python 会尝试加载此文件而不是您想要的模块。
这可能会导致本问题标题描述的问题。
这似乎是我搜索时最常见的结果。就我而言,我试图安装带有可编辑标志的本地包(Python 包的本地开发)。
我的问题是本地包的根文件夹不在Python路径上;以下行解决了问题:
echo "export PYTHONPATH=$PYTHONPATH:/path/to/your/package/" >> /home/your_username/.bashrc