python虚拟环境管理工具,python创建虚拟环境的作用
GitHub: pypa/pipenv:面向人类的计算机编程语言开发工作流(github.com)
介绍:
pipenv就是把点和虚拟环境包装起来的一个便携工具,它会自动为您的项目创建和管理virtualenv,以及在安装/卸载软件包时添加/删除Pipfile中的软件包。
使用pipenv管理大蟒环境虚拟环境的优势:
不再需要分开使用点和virtualenv,合并到了一起
不再需要管理requirements.txt,pipenv安装xxx安装包时自动生成版本号、哈希值、包依赖关系到Pipfile和Pipfile.lock,并且可以手工编辑以区分开发环境和生产环境
使用混杂校验安装的包,有利于主动暴露安全问题
使用最新版本的依赖项,以最大限度地降低过时组件带来的安全风险
可以图形化显示包之间的依赖关系(管道噪声图)
通过加载。包封/包围(动词包围的简写)文件简化开发工作流程
安装:
前提:已经成功安装了大蟒与点
linux:
pip3安装管道
mac:
啤酒安装管道管道依赖psutil,virtualenv-clone,pew,certifi,urllib3,chardet,requests,mccabe,pyflakes,pycodestyle,flake8等第三方模块,管道有很漂亮的彩色终端界面。
安装成功之后,会生成两个文件:Pipfile和Pipfile.lock
文件说明:
Pipfile:显示项目环境和依赖包
[[来源]]
name=pypi
URL= https://镜像。阿里云。com/pypi/simple/ #指定国内点源,不然会慢死人的
验证ssl=真
[开发包] #开发环境
[包] #生产环境
请求=* # *表示最新版本
django=*
[需要]
python_version=3.7 # python版本Pipfile.lock:详细记录环境依赖,并利用混杂算法保证他完整对应关系
{
_meta: {
哈希:{
沙256 : d 737 a1 ef 2 F8 b 591 f 86 CD 0 fa 6a 8 CB 48918 f 742d 60 df 2 a 394 ebc 3d 23 af 4748999
},
pipfile-spec: 6,
需要:{
python_version: 3.7
},
来源:[
{
名称: pypi ,
网址: https://pypi.org/simple ,
verify_ssl: true
}
]
},
默认:{
证明:{
哈希:[
sha 256:47 F9 c 83 ef 4c 0 c 621 aeef 743 f 133 f 09 fa 8 a 74 a 9 b 75 f 037 e 8624 f 83 BD 1b 6626 CB 7 ,
sha 256:993 f 830721089 Fe 441 cdfe B4 b 2c 8 c 9 df 86 f0c 63239 f 06 BD 025 a 76 a 7 dad db 033
],
版本:==2018.11.29
},
chardet: {
哈希:[
sha 256:84 ab 92 ed 1c 4d 16916 e 05906 b 6b 75 a 6 c 0 FB 5 db 821 cc 65 e 70 CBD 64 a3 e 2 a5 eaae ,
沙256:fc 323 ffcaaeed 0 e 0a 02 BF 4d 117757 b 98 aed 530d 9 ed 4531 E3 e 15460124 c 106691
],
版本:==3.0.4
},
姜戈:
哈希:[
沙256:a 32 c 22 af 23634 E1 d 11425574 DCE 756098 e 015 a 165 be 02e 4690179889 b 207 c 7a 8 ,
sha 256:d 6393918 da 830530 a 9516 bbbcbf 7 f 1214 c 3d 733738779 f 06 b0f 649 f 49 cc 698 c 3
],
索引: pypi ,
版本:==2.1.5
},
idna: {
哈希:[
沙256:c 357 B3 f 628 cf 53 AE C4 c 05627 ECC 484553142 ca 23264 e 593d 327 bcde 5 e9 c 3407 ,
沙256:ea 8 b 7 f 6188 E6 fa 117537 C3东风7 da 9 fc 686d 485087 abf 6 AC 197 f 9 c 46432 f 7 E4 a3 c
],
版本:==2.8
},
“pytz”:
哈希:[
sha 256:32 b 0891 EDF 07 e 28 EFE 91284 ed 9 c31e 123d 84 bea 3 FD 98 E1 f 72 be 2508 f 43 ef 8d 9 ,
D5 f 05 e 487007 e29e 03409 f 9398d 074 e 158d 920d 36 EB 82 EAF 66 FB 1136 b0c 5374 c
],
版本:==2018.9
},
请求:{
哈希:[
沙256:502 a 824 f 31 ACD ACB 3 a 35 b 6690 b 5 fbf 0 BC 41d 63 a 24 a 45 c 4004352 b 0242707598 e ,
沙256:7 bf2a 778576d 825600030 a 110 F3 c 0 e 3 e 8 EDC 51 DFA AFE 1c 146 e 39 a 2027784957 b
],
索引: pypi ,
版本:==2.21.0
},
urllib3: {
哈希:[
沙256:61 BF 29 CAD a3 fc 2 FBE fad 4 fdf 059 ea 4 BD 1 B4 a 86 D2 b6d 15 E1 C7 c0b 582 b 9752 Fe 39 ,
sha 256:de 9529817 c 93 f 27 c 8 CCB fead 6985011 db 27 BD 0 ddfcdb 2d 86 F3 f 663385 c 6 a9 c 22
],
版本:==1.24.1
}
},
开发:{}
}
使用方式:
pipenv安装请求
安装包
pipenv - python 3.7指定某个大蟒版本
pipenv - python指定某个大蟒路径
进入虚拟环境:
管道外壳
退出虚拟环境:
出口
注意:不要使用停用,否则下次进入的时候就会发生报错
删除虚拟环境:
管道nv - rm
注意点:
通常,在安装和卸载软件包时,不需要先进入或退出虚拟环境。直接在项目文件下安装pipenv install/uninstall xxx即可退出虚拟环境。不要停用,请使用exit,否则下次pipenv进入时会报错如下[root @ shiyanlou my project]# pipe NV shell
未知虚拟环境的外壳已激活。
没有采取措施避免嵌套环境。
[root@shiyanlou myproject]#
Pipenv - rm不会删除生成的Pipfile和Pipfile.lock
管理环境:
通常有一些Python包只在你的开发环境中需要,在生产环境中不需要,比如单元测试包。Pipenv使用- dev标志来区分这两种环境。也就是说,-- dev参数帮助你区分同一个虚拟环境中的开发环境和非开发环境。
$ pipenv install - dev pytest在虚拟环境中运行命令,使用run参数提供要运行的命令:
$ pipenv运行python manage.py运行服务器
这将使用与当前虚拟环境相关联的Python解释器来执行命令。或者简单地执行脚本。
运行python your_script.py
冻结Pipfile相当于打包输出项目使用的第三方库列表,类似于在virtualenv中生成requirements.txt文件。更新Pipfile.lock以冻结库名及其版本,以及它的依赖项列表。使用锁定参数:
[root @ shiyanlou my project]# pipenv lock
锁定[开发包]依赖项…
锁定[软件包]依赖项…
成功!
更新了Pipfile.lock (748999)!
[root@shiyanlou myproject]#
常见命令:
#找到项目路径
pipenv -哪里
#定位虚拟环境
pipenv - venv
#找到python解释器
管道nv - py
#显示依赖关系
管道图
#卸载所有软件包
pipenv卸载-全部
#检查安全漏洞
管道检查
#在虚拟化中运行命令
pipenv运行“python manage . py runserver 0 . 0 . 0 . 0:8080”
#卸载所有当前软件包并安装它们的最新版本
pipenv更新
#通过requirements.txx文件安装包(这样我们就可以重用之前的requirement.txt文件来构建我们新的开发环境,顺利地将我们的项目迁移到pipenv。)
pipenv安装-r要求. txt
#生成需求. txt
pipenv lock -r requirements.txt
pipen lock-r-dev requirements . txt指定了-dev参数,只安装dev-packages下的包。如果未指定,将安装软件包下的所有模块。
选项:
- where显示项目文件所在的路径。
- venv显示虚拟环境的实际文件所在的路径。
- py显示虚拟环境的Python解释器的路径。
- envs显示虚拟环境的选项变量。
- rm删除虚拟环境
- bare最小化输出。
-完成完成输出
- man显示帮助页面。
- three/- two使用Python 3/2创建一个虚拟环境(注意这台机器安装的Python版本)
- Python文本指定Python版本作为虚拟环境的安装源。
- site-packages在最初的Python解释器中安装了第三方库。
-大屏幕上是复活节彩蛋。
-版本版本信息
-h,-help帮助信息
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。