python 虚拟环境
1 pip list 和pip freeze的区别
-
pip list # 查看已安装的依赖包
pip freeze # 冻结当前环境的依赖包 -
pip freeze 为什么比 pip list 的包少几个呢?
因为pip , wheel , setuptools 等包,是自带的而无法(un)install的。考虑到pip freeze的用途,所以这些包并没有显示。 -
保存和复制虚拟环境(不是虚拟环境也可以用):
pip freeze > requirements.txt 把安装模块的名字和版本号存放在文本文件中
pip install -r requirments.txt 安装文本文件中的模块
2 虚拟环境的创建
-
虚拟环境中不重复安装标准库, 只包含第三方库.
-
python -m venv d:\venvdir\sun 会在d:\venvdir文件夹下,创建一个文件夹sun(虚拟环境)
python -m venv sun 会在当前目录下(cmd提示符可以看到), 创建一个文件夹sun(虚拟环境)
命令 python -m venv -h 查看venv命令帮助, --system-site-packages选项使用原环境中的第三方库
- 虚拟环境文件夹里面的内容:
Lib\site-packages\ 存放安装的第三方库
Scripts\ python.exe pip.exe activate(mac系统激活虚拟环境用) activate.bat(windows系统激活虚拟环境用) deactivete.bat(退出虚拟环境)等等
3 激活和退出虚拟环境
- cmd下,切换到虚拟环境Scripts文件夹下, 执行activate 命令, 提示符前面会有虚拟环境名字在括号中, 此时pip list 或者 pip freeze 就只局限在虚拟环境中了. 退出执行命令deactivate.
- cmd下,切换到虚拟环境Scripts文件夹下, 执行python命令, 不用激活, 现在的环境就是虚拟环境中
4 pycharm 虚拟环境
-
使用创建好的虚拟环境: pycharm新建项目, 用已有的解释器, 找到虚拟环境Scripts文件夹下的python.exe文件
-
自己创建虚拟环境:
新建项目, 使用新虚拟环境, 虚拟环境位置默认在项目位置文件夹下, 也可以把虚拟环境位置不放在项目文件夹下, 并勾选 可用于所有项目选项, 这样下一次新建项目, 在现有解释器里面可以看到这个虚拟环境, 并可以共用它.