这篇文章主要介绍Python虚拟环境怎么使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
这里的环境,指的就是 Python 代码的运行环境。它应该包含以下信息:
Python 解释器,用哪个解释器来执行代码?
Python 库的位置,该去哪里 import
所需要的模块?
可执行程序的位置,比如说安装了 pip
,那么 pip
命令是在哪里?
由于每个项目的情况都可能不一样,比如这个项目用的是vtk 7.1,另一个项目用的是vtk 9.0。如果不进行环境隔离而是全局安装,就会导致包的冲突从而出现问题,这个时候让每个项目都拥有一套独立的Python环境,这样就不会产生冲突了。Python虚拟环境正是为了解决这个问题而存在的,简而言之,虚拟环境就是系统 Python 环境的一个副本。
Python虚拟环境常见的工具为以下几种:
virtualenv
venv
pipenv
virtualenv 是目前最流行的 Python 虚拟环境配置工具。它不仅同时支持 Python2 和 Python3,而且可以为每个虚拟环境指定 Python 解释器,并选择不继承基础版本的包。
virtualenv 的优点
使得不同Python应用的开发环境相互独立
开发环境升级不影响其他应用的开发环境,也不会影响全局的环境(默认开发环境是全局开发环境),因为虚拟环境是将全局环境进行私有的复制,当我在虚拟环境进行 pip install 时,只会安装到选择的虚拟环境中。
它可以防止系统中出现包管理混乱和版本的冲突
1. pip 安装 virtualenv
pip install virtualenv
2. 创建虚拟环境目录
mkdir myproject cd myproject
3. 创建一个独立的Python运行环境: myenv
virtualenv --no-site-packages myenv # --no-site-packages 其意义在于不复制已经安装到系统Python环境中的所有第三方包从而得到一个“纯净”的运行环境。
此时当前目录下会生成一个名为:“myenv” 的目录,该目录中存放刚生成的虚拟环境文件
4. 激活虚拟运行环境
# Windows myenv\Scripts\activate.bat # Linux source myenv/bin/activate
以上命令执行完后会发现命令提示符变了,有个(myenv)前缀,表示当前环境是一个名为“myenv”的Python环境,此时可以在该环境中按照我们熟悉的方式安装库、运行程序等
5. 使用deactivate命令退出当前的myenv环境
deactivate
Python 从3.3 版本开始,自带了一个虚拟环境 venv,它的很多操作都和 virtualenv 类似,但是两者运行机制不同。因为是从 3.3 版本开始自带的,这个工具也仅仅支持 python 3.3 和以后版本。所以,要在 python2 上使用虚拟环境,依然要利用 virtualenv 。
1. pip安装venv
# Windows windows中venv已经以标准库的形式存在,不用再单独安装 # Linux sudo apt install python3-venv # 如有不同版本的Python3,可指定具体版本venv:python3.5-venv
2. 在当前目录创建一个独立的Python运行环境: myenv
# Windows py -3 -m venv myenv # Linux python3 -m venv myenv
3. 激活虚拟运行环境
# Windows myenv\Scripts\activate.bat # Linux source myenv/bin/activate
以上命令执行完后会发现命令提示符变了,有个(myenv)前缀,表示当前环境是一个名为“myenv”的Python环境,此时可以在该环境中按照我们熟悉的方式安装库、运行程序等
4. 使用deactivate命令退出当前的myenv环境
deactivate
pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了Pipfile、pip、click、requests和virtualenv,能够有效管理Python多个环境,各种第三方包及模块。
pipenv 的主要特性:
pipenv集成了pip,virtualenv两者的功能,且完善了两者的一些缺陷。
过去用virtualenv管理requirements.txt文件可能会有问题,Pipenv使用Pipfile和Pipfile.lock,后者存放将包的依赖关系,查看依赖关系是十分方便。
各个地方使用了哈希校验,无论安装还是卸载包都十分安全,且会自动公开安全漏洞。
通过加载.env文件简化开发工作流程。
支持Python2 和 Python3,在各个平台的命令都是一样的。
1. pip安装pipenv
pip3 install pipenv # 全局安装,如果只想在当前用户模式下安装,可添加参数:--user # 更新 pip3 install --user --upgrade pipenv
注: 如果在使用当前用户模式下安装pipenv后在shell中提示不可用,则需要把用户库的目录“C:\Users\XXX\AppData\Roaming\Python\Python37\Scripts”添加到你的PATH【系统环境路径】中,然后重启电脑,环境变量生效后即可使用。
2. pipenv创建虚拟环境说明
pipenv --two # 使用当前系统中的Python2 创建环境 pipenv --three # 使用当前系统中的Python3 创建环境 pipenv --python 3 # 指定使用Python3创建环境 pipenv --python 3.6 # 指定使用Python3.6创建环境 pipenv --python 2.7.14 # 指定使用Python2.7.14创建环境
1)创建环境时应使用系统中已经安装的、能够在环境变量中搜索到的Python 版本,否则会报错。
2)每次创建环境都会在当前目录下生成一个名为Pipfile文件,用来记录刚创建的环境信息,如果当前目录下之前存在该文件,会将其覆盖。
3)在使用指定版本创建环境的时候,版本号与参数 --python 之间有个空格。
3. 创建Python3.8环境
激活虚拟环境
pipenv shell
环境经激活后,会发现命令提示符变了(上图中的“pyTest”前缀,表示生成了名为“pyTest”的虚拟环境)
4. 其他常用命令
pipenv --where # 显示目录信息 pipenv --venv # 显示虚拟环境信息 pipenv --py # 显示Python解释器信息
pipenv install XXX # 安装XXX模块并加入到Pipfile pipenv install XXX==1.11 # 安装固定版本的XXX模块并加入到Pipfile
pipenv graph # 查看目前安装的库及其依赖 pipenv check # 检查安全漏洞 pipenv update --outdated # 查看所有需要更新的依赖项 pipenv update # 更新所有包的依赖项 pipenv update package_name # 更新指定的包的依赖项 pipenv uninstall XXX # 卸载XXX模块并从Pipfile中移除 pipenv uninstall --all # 卸载全部包并从Pipfile中移除 pipenv uninstall --all-dev # 卸载全部开发包并从Pipfile中移除
退出当前虚拟环境
exit
删除虚拟环境
pipenv --rm
5. python 文件的运行
# 使用pipenv完整命令运行 pipenv run python xxx.py # 在激活环境中运行 pipenv shell python xxx.py
以上是“Python虚拟环境怎么使用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。