【发布时间】:2016-05-30 12:56:45
【问题描述】:
我在命令提示符下运行了“pip freeze”,它只列出了我安装到我的 venv(虚拟环境)中的本地包
虽然 smy 脚本使用了一些包,比如全局安装的 datetime
这就是我所做的 -
1.Ran pip freeze 在我的 venv 内(激活我的 venv 后) 输出 -
Django==1.9.2
requests==2.9.1
whitenoise==2.0.6
注意 - 我在我的 venv 中本地安装了这三个包。
2.在外面运行“pip freeze”(停用我的 venv / 新命令提示符窗口后)仍然是相同的输出
Django==1.9.2
requests==2.9.1
whitenoise==2.0.6
我在全球安装了很多包,这里很少
1.datetime
2.urllib.parse
3.selenium
4.lxml
5.bs4
6.openpyxl
and more.
通过 IDLE 我仍然可以导入这些包,它们工作正常。
为什么 pip freeze 只列出本地包? 以及如何获取所有已安装软件包的列表(全局),以便我可以创建一个 requirements.txt
其他细节 - 我安装了两个版本的 python (py3.5 , py2.7)
【问题讨论】:
-
在你的 virtualenv 之外是什么意思?你停用了吗?还是选择其他终端?
-
停用我的 venv 后,是的。
-
根据您的系统,您可能有
pip2或pip3和默认的pip,试试其中的一个吗?喜欢pip2 freeze -
pip2 freeze 仍然输出相同的结果,而 pip3 抛出错误 - 启动器中的致命错误:无法使用 '"' 创建进程
-
我可能错了,但也许 pip 无法访问目录进行读取访问,请尝试
sudo pip freeze。