纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Python虚拟环境 简单介绍Python虚拟环境及使用方法

风烟倦   2021-06-07 我要评论
想了解简单介绍Python虚拟环境及使用方法的相关内容吗风烟倦在本文为您仔细讲解Python虚拟环境的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Python虚拟环境用法,Python虚拟环境的介绍下面大家一起来学习吧

一、为什么需要虚拟环境?

这里的环境指的就是 Python 代码的运行环境它应该包含以下信息:

  • Python 解释器用哪个解释器来执行代码?
  • Python 库的位置该去哪里 import 所需要的模块?
  • 可执行程序的位置比如说安装了 pip那么 pip 命令是在哪里?

由于每个项目的情况都可能不一样比如这个项目用的是vtk 7.1另一个项目用的是vtk 9.0如果不进行环境隔离而是全局安装就会导致包的冲突从而出现问题这个时候让每个项目都拥有一套独立的Python环境这样就不会产生冲突了Python虚拟环境正是为了解决这个问题而存在的简而言之虚拟环境就是系统 Python 环境的一个副本

Python虚拟环境常见的工具为以下几种:

  • virtualenv
  • venv
  • pipenv

二、virtualenv

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

三、venv

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

pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具主要包含了Pipfile、pip、click、requests和virtualenv能够有效管理Python多个环境各种第三方包及模块

pipenv 的主要特性:

  • pipenv集成了pipvirtualenv两者的功能且完善了两者的一些缺陷
  • 过去用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

相关文章

猜您喜欢

网友评论

Copyright 2020 www.fresh-weather.com 【世纪下载站】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式