Python虚拟环境

本文详细介绍了Python中创建和管理虚拟环境的三种方式:virtualenv、venv和pipenv。virtualenv是最常见的,需要配合virtualenvwrapper-win进行管理,venv是Python3内置的轻量级解决方案,而pipenv则集成了虚拟环境和包管理功能,提供更安全的依赖管理。文章还讲解了如何创建、激活、退出和管理虚拟环境,以及安装和管理第三方库的方法。
摘要由CSDN通过智能技术生成

Python创建虚拟环境的方法有多种。我知道的有三种,分别是:

  • virtulenv
  • venv
  • pipenv
一、virtualenv
1、安装virtualenv、virtualenvwrapper-win

virtualenv是最常见的虚拟环境包,需要手动下载,支持python2和python3。

为了方便管理虚拟环境,通常还会下载虚拟环境管理工具包:

  • virtualenvwrapper (Linux版本)
  • virtualenvwrapper-win (windows版本)

在windows终端(cmd)中安装:

pip install virtualenv virtualenvwrapper-win

卸载:

pip uninstall virtualenv virtualenvwrapper-win
2、修改环境变量

创建的虚拟环境会默认安装在系统盘用户名文件下。当用户名为中文时,不能找到虚拟环境自身的pip而使用真实环境的pip和第三方库。在虚拟环境中安装其他模块时,无法安装到虚拟环境下,而是安装在真实环境。或者无法使用pip而报错。

修改方法:
此电脑-》属性-》高级系统设置-》环境变量-》系统变量-新建:
变量名:WORKON_HOME
变量值:D:\Python3\Envs

-》确定-》确定…

3、虚拟环境的创建与管理
(1)使用virtualenvwrapper-win进行管理

创建:

mkvirtualenv 环境名

退出:

deactivate

查看系统变量路径下所有虚拟环境:

workon lsvirtualenv

进入:

workon 环境名

删除:

rmvirtualenv 环境名

进入虚拟环境所在目录:

cdvirtualenv 虚环名
(2)使用virtualenv创建使用虚拟环境

不使用系统变量的路径,在当前文件夹下创建一个虚拟环境:

virtualenv 环境名

进入虚拟环境的Scripts文件夹,激活后进入虚拟环境:

cd 环境名\Scripts 
activate

退出:

deactivate
4、检查虚拟环境并安装第三方库
(1)检查虚拟环境是否正常

进入虚拟环境检查pip的路径是否在虚拟环境下,如果是真实环境中的pip或报错不能使用虚拟环境的pip,建议删除虚拟环境重新创建或检查虚拟环境路径中是否存在中文,最好改成英文,或重新设置环境变量,重复第2步。

pip -V

检查虚拟环境中的第三方库,新建的虚拟环境通常只有三个。如果打印出了真实环境中的所有第三方库或出现错误,解决方法同上。

pip list
(2)检查虚拟环境正常,便可在虚拟环境中便捷地安装第三方库了。

使用虚拟环境通常安装的都不是最新版的第三方库,pip默认安装最新版。故需要给出版本号。
通常在国内为了快速下载第三方库会使用换源的方法下载。常用的源有:

  • 阿里云 http://mirrors.aliyun.com/pypi/simple/
  • 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
  • 豆瓣(douban) http://pypi.douban.com/simple/
  • Python官方 https://pypi.python.org/simple/
  • v2ex http://pypi.v2ex.com/simple/
  • 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
pip install djang==2.2.17 -i http://pypi.douban.com/simple/
二、venv

venv是Python3自带的虚拟环境创建包。由于Python2没有venv所以还不常用。
其创建虚拟环境的命令为:

python -m venv [路径]环境名

默认是在当前目录下创建虚拟环境。也可以通过参数指定路径。
在虚拟环境中安装第三方库方法同上。
进入虚拟环境方法同virtualenv。

三、pipenv

pipenv还未尝试,以下内容来自
https://www.cnblogs.com/jiangmingbai/p/10903356.html

安装 pip install pipenv
pipenv 集成了pip,virtualenv两者的功能,pipenv使用pipfile和pipfile.lock记录包信息,前者用来记录项目依赖包列表,后者记录固定版本的详细依赖包列表,查看依赖关系十分方便,各个地方使用了哈希效验,无论安装还是卸载包都十分安全

创建虚拟环境
第一步创建文件夹 mkdir [name]
第二步进入文件夹 cd [name]
第三部初始化虚拟环境 pipenv install
初始化后会生成pipfile和pipfile.locke文件
pipenv管理模块和包
在虚拟环境中安装包:pipenv install 包名 将包安装在[packages]下(注意:当前项目路径下执行命令)
pipenv install --dev 包名 将包安装在开发环境中[dev-packages]
卸载虚拟环境安装包 pipenv uninstall 包名
查看安装包及依赖关系 pipenv graph
生成requirements.txt文件

pipenv lock -r >requirements.txt 来源[packages]
pipenv lock-r--dev >requirements.txt 来源[dev-packages]

使用requirements.txt恢复环境

pipenv install -r requirements.txt

使用pipfile和pipfile.lock恢复环境
将两个文件导入到新的项目中,在项目路径下执行
pipenv install 项目环境恢复
pipenv install --dev 开发环境恢复
pipenv的相关命令
pipenv --rm 删除虚拟环境
pipenv --where 列出当前工程路径
pipenv --venv 列出虚拟环境路径
pipenv --py 列出python解释器路径
pipenv graph 查看依赖包
pipenv lock 生存lock文件
pipenv shell 进入虚拟环境
exit 退出虚拟环境

总结

virtualenv 任意项目都能workon创建虚拟环境; pipenv 创建的虚拟环境进去默认在该路径下,提前做了一步锁定,别的项目要使用该环境还要切换到项目路径下才能使用
virtualenv 不区别 开发依赖和项目依赖包 pipenv做了进一步区分为[dev-packages]和[packages]
pip freeze 生成全部的依赖包的requirement.txt
pipenv lock-r区别[dev-packages]和[packages]生成requirement.txt
pipenv 更加强大根据项目建立虚拟环境,默认该项目就和虚拟环境做了联系

参考文献:
https://www.cnblogs.com/jiangmingbai/p/10903356.html
https://www.jianshu.com/p/a7979ac3b226
https://www.jb51.net/article/195070.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值