虚拟环境
虚拟环境就是创建一个 隔离 的 python 环境,在这个环境里可以安装 python 所需的各种包,并使得这些包与 系统里的 python 不相干;
常用于版本管理;
手动创建 Virtualenv 环境
本文以 linux 系统为例,windows 大同小异,掌握精髓
首先,安装 virtualenv
pip install virtualenv
安装完成后,virtualenv 出现在 python 的 bin 目录下
你可以建立 软连接 链接到 /usr/bin 下,也可以每次使用都切到 /usr/lib/python27/bin 下
注意:virtualenv 的使用不受 pip 版本 制约
创建虚拟环境
先看看 virtualenv 的参数
[root@hadoop10 python27]# bin/virtualenv --help Usage: virtualenv [OPTIONS] DEST_DIR Options: --version show program's version number and exit -h, --help show this help message and exit -v, --verbose Increase verbosity. -q, --quiet Decrease verbosity. -p PYTHON_EXE, --python=PYTHON_EXE The Python interpreter to use, e.g., --python=python3.5 will use the python3.5 interpreter to create the new environment. The default is the interpreter that virtualenv was installed with (/usr/bin/python) --clear Clear out the non-root install and start from scratch. --no-site-packages DEPRECATED. Retained only for backward compatibility. Not having access to global site-packages is now the default behavior. --system-site-packages Give the virtual environment access to the global site-packages. --always-copy Always copy files rather than symlinking. --relocatable Make an EXISTING virtualenv environment relocatable. This fixes up scripts and makes all .pth files relative. --no-setuptools Do not install setuptools in the new virtualenv. --no-pip Do not install pip in the new virtualenv. --no-wheel Do not install wheel in the new virtualenv. --extra-search-dir=DIR Directory to look for setuptools/pip distributions in. This option can be used multiple times. --download Download pre-installed packages from PyPI. --no-download, --never-download Do not download pre-installed packages from PyPI. --prompt=PROMPT Provides an alternative prompt prefix for this environment. --setuptools DEPRECATED. Retained only for backward compatibility. This option has no effect. --distribute DEPRECATED. Retained only for backward compatibility. This option has no effect. --unzip-setuptools DEPRECATED. Retained only for backward compatibility. This option has no effect.
用 virtualenv 命令创建虚拟环境,在 命令后 直接加 虚拟环境的名字 即可
bin/virtualenv pyspark-env
在当前路径创建虚拟环境,并且虚拟环境会自动安装 pip 之类的库
virtualenv -p /usr/bin/python27 venv
注意:在创建环境时 可指定 python 版本
激活虚拟环境
虚拟环境需要先激活才能使用
[root@hadoop10 python27]# source pyspark-env/bin/activate (pyspark-env) [root@hadoop10 python27]# (pyspark-env) [root@hadoop10 python27]#
可以看到进入虚拟环境了,(pyspark-env),后面的命令都在 虚拟环境 中执行了;
也就是说你后续的所有操作都在 虚拟环境 中了,跟 系统的 python 隔绝了,随便折腾吧;
如你可以用 pip 安装包,各种操作与常规操作无异;
注意
虽然在创建 虚拟环境 的时候不包含任何 系统 py 的包,但是在 虚拟环境内 pip 安装包的时候,总是提示已经有了,且是 系统 py 内已经有了,无法安装,此时可如下操作强行安装
(pyspark-ml-env) [root@hadoop10 pyspark-ml-env]# pip install --ignore-installed numpy
关闭虚拟环境
折腾够了,就关了吧
(pyspark-env) [root@hadoop10 python27]# deactivate [root@hadoop10 python27]#
在虚拟环境中直接运行 deactivate ,就退出来了
删除虚拟环境
用完就删了吧,免得后面乱套了
rm -rf pyspark-env
PyCharm 创建 Virtualenv 环境
首先,思考一下 环境 和 项目的关系,我们日常开发需要创建 一个环境,再创建N个项目,让项目在该环境上运行,代码才能跑起来
环境管理
show all 可以 展示 所有 已经 创建的 环境
所有 环境 列表,可以 增加、删除、编辑 等
不同项目下 创建的环境 都在这里
环境创建
方式一:
通过上述 环境管理 的 添加 按钮 创建环境
方式二:
其实和方式一相同,只是 入口不同
注意,这个 base interpreter 最好是 设置了环境变量的 python 解释器
方式三:直接创建项目,同时 创建环境,也可以在此时 绑定 已经存在的环境
环境 与 项目 绑定
方式一:在项目下打开 环境管理,选择一个环境,即可将 该环境 与项目绑定
方式二:在 创建项目时,选择一个环境
环境使用
下图只是一种方式,还有其他方式方法,用法很灵活,此处不做赘述
还不懂 上 b站 搜 pycharm创建虚拟环境 佛系|少年 试试
还有一个工具 virtualenvwrapper,更强大,可以自己了解下
参考资料:
https://www.cnblogs.com/technologylife/p/6635631.html
https://www.jianshu.com/p/b8638271017d win 和 linux
https://www.liaoxuefeng.com/wiki/1016959663602400/1019273143120480 廖雪峰
https://virtualenv.pypa.io/en/latest/userguide/#making-environments-relocatable 官网
https://www.cnblogs.com/283383765pw/p/10669572.html Windows下Python的虚拟环境