我遇到了virtualenv的问题。我经常使用它,我在我的开发机器和几台服务器上使用它。但是在最后一台服务器上我尝试使用我遇到了问题。
我使用--no-site-packages参数创建了一个virtualenv,然后我在virtualenv中安装了一些python模块。我可以确认模块位于virtualenvs站点包内,一切似乎都没问题。
但是当我尝试执行:source virtualenv/bin/activate
然后导入其中一个模块python import modulename
时,我收到导致该模块不存在的导入错误。这是怎么回事?它似乎永远不会激活它所说的它。
有人知道如何解决这个问题吗?
答案 0 :(得分:16)
在这台机器上是否有“bthon”活动的bash别名,有机会吗?这将优先于activate激活的PATH修改,并可能导致使用错误的python二进制文件。
尝试直接运行virtualenv / bin / python(无需激活),看看是否可以导入模块。
如果这样修复它,你只需要摆脱你的python bash别名。
答案 1 :(得分:8)
激活虚拟环境后,请尝试:
$ python
>>> import sys
>>> sys.executable
...
...并查看您是否正在运行预期的可执行文件。
同时检查:
>>> sys.path
[...]
答案 2 :(得分:0)