你可以cd去YOUR_ENV/lib/pythonxx/site-packages/看看,但有什么方便吗?
pip freeze 列出所有已安装的软件包,包括系统环境.
Ioa*_*dis 52
您只能在virtualenvby
pip freeze --local
或中
列出包pip list --local.无论您是否在可见的全局站点包中都可以使用此选项virtualenv.
请注意,限制virtualenv不使用全局站点包不是问题的答案,因为问题在于如何分离两个列表,而不是如何约束我们的工作流以适应工具的限制.
Sas*_*ied 24
pip在virtualenv中调用命令应列出隔离环境中可见/可用的包.确保使用--no-site-packages默认情况下使用选项的最新版本的virtualenv .这样使用virtualenv的目的是创建一个python环境,而无需访问系统python中安装的软件包.
接下来,确保使用pipvirtualenv(YOUR_ENV/bin/pip)中提供的命令.或者只是激活virtualenv(source YOUR_ENV/bin/activate)作为调用python interpreter或pip的正确命令的便捷方式
~/Projects$ virtualenv --version
1.9.1
~/Projects$ virtualenv -p /usr/bin/python2.7 demoenv2.7
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in demoenv2.7/bin/python2.7
Also creating executable in demoenv2.7/bin/python
Installing setuptools............................done.
Installing pip...............done.
~/Projects$ cd demoenv2.7/
~/Projects/demoenv2.7$ bin/pip freeze
wsgiref==0.1.2
~/Projects/demoenv2.7$ bin/pip install commandlineapp
Downloading/unpacking commandlineapp
Downloading CommandLineApp-3.0.7.tar.gz (142kB): 142kB downloaded
Running setup.py egg_info for package commandlineapp
Installing collected packages: commandlineapp
Running setup.py install for commandlineapp
Successfully installed commandlineapp
Cleaning up...
~/Projects/demoenv2.7$ bin/pip freeze
CommandLineApp==3.0.7
wsgiref==0.1.2
Run Code Online (Sandbox Code Playgroud)
我的答案有些奇怪,在virtualenv中可以看到包'wsgiref'.它来自我的系统python.目前我不知道为什么,但也许你的系统有所不同.
在 Python3 中
pip list
Run Code Online (Sandbox Code Playgroud)
空 venv 是
Package Version
---------- -------
pip 19.2.3
setuptools 41.2.0
Run Code Online (Sandbox Code Playgroud)
创建一个新环境
python3 -m venv your_foldername_here
Run Code Online (Sandbox Code Playgroud)
启用
cd your_foldername_here
source bin/activate
Run Code Online (Sandbox Code Playgroud)
停用
deactivate
Run Code Online (Sandbox Code Playgroud)
您也可以站在文件夹中,为虚拟环境指定一个名称/文件夹(python3 -m venv name_of_venv)。
Venv 是 Python 3.3 之后随附的 virtualenv 的子集。
如果您仍然对此感到困惑,则virtualenv可能无法选择如何结合Ioannis和Sascha的答案中的出色技巧。即,这是您需要的基本命令:
/YOUR_ENV/bin/pip freeze --local
Run Code Online (Sandbox Code Playgroud)
那可以很容易地在其他地方使用。例如,这是一个方便且完整的答案,适用于在您通过virtualenvwrapper设置的所有环境中安装所有本地软件包:
cd ${WORKON_HOME:-~/.virtualenvs}
for dir in *; do [ -d $dir ] && $dir/bin/pip freeze --local > /tmp/$dir.fl; done
more /tmp/*.fl
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
67882 次 |
| 最近记录: |