加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

”微处事一条龙“最佳指南-器材篇:起源行使Pipenv

发布时间:2018-10-25 04:39:29 所属栏目:教程 来源:Lateautumn_Lin
导读:起首贴上Pipenv的主页 GitHub地点:https://github.com/pypa/pipenv 文档地点:https://docs.pipenv.org 配景先容 1.什么是Pipenv? 答复:包和版本打点的最好器材,pipenv 是 Pipfile 首要建议者、requests 作者 Kenneth Reitz 写的一个呼吁行器材,首要包
副问题[/!--empirenews.page--]

”微处事一条龙“最佳指南-器材篇:起源行使Pipenv

起首贴上Pipenv的主页

GitHub地点:https://github.com/pypa/pipenv

文档地点:https://docs.pipenv.org

配景先容

1.什么是Pipenv?

答复:包和版本打点的最好器材,pipenv 是 Pipfile 首要建议者、requests 作者 Kenneth Reitz 写的一个呼吁行器材,首要包括了Pipfile、pip、click、requests和virtualenv。Pipfile和pipenv原来都是Kenneth Reitz的小我私人项目,其后孝顺给了pypa组织。Pipfile是社区制定的依靠打点文件,用于更换过于简略的 requirements.txt 文件。

2.Python有哪些包和版本打点器材?

答复:pip、virtualenv、pyenv

3.这些器材和Pipenv的区别以及它相同与其他说话中的哪些器材?

答复:

(1)pip只是一个Python包揽理的器材,也就是说它不能同时去打点项目标版本,举例来说,

场景一:

项目A和项目B,同时行使一个包,可是项目A必要行使包的1.0版本,项目B必要行使包的2.0版本

场景二:

项目A在开拓阶段必要行使到单位测试模块,以是用到一些做测试的包,可是项目上线不必要这些包。

这种场景需求就要求我们必要为差异的版本以及开拓阶段提供差异假造情形。

(2)virtualenv

virtualenv 是一个建设距离的Python情形的器材。virtualenv建设一个包括全部须要的可执行文件的文件夹,用来行使Python工程所需的包。它的道理着实很简朴,就是在建设完新的假造情形之后,在激活情形的同时,在情形变量内里加上了指定假造情形的Python路径罢了

讲到这里,我们有个迷惑,既然virtualenv这么好用了,为什么官方更保举行使Pipenv呢,由于它在virtualenv之上又封装了一层,这就仿佛requests在urllib等收集库之后又封装了一层,越发人道化,以及越发富厚的、简捷的语法天然是更受接待,并且越发奇异的是其在对付依靠的处理赏罚越发细节化,当下载一个新的包时,会自动对包加锁处理赏罚,搜查其依靠包的包装环境。

那么,在其他说话中是否有相同的项目呢,着实是有的。Pipenv也是小心于Node的NPM,Ruby的GEM等等,各人感乐趣可以去看看他们的道理,我们会在之后的文章中来探索一下他们的计划道理。

2.详细行使

安装

Pipenv 是基于 Python 开拓的包,以是可以直接用 pip 来安装,呼吁如下:

  1. pip3 install pipenv 

其它尚有多种安装方法,如 Pipsi、Nix、Homebrew,安装方法可以参考:http://pipenv.readthedocs.io/en/latest/#install-pipenv-today

根基行使

起首我们可以新建一个项目,譬喻叫做 PipenvTest,然后新建一个 Python 剧本,譬喻叫 main.py,内容为:

  1. import django 
  2. print(django.get_version()) 

直接用体系的 Python3 运行此剧本:

  1. python3 main.py 

功效如下:

  1. 1.11 

我们可以看到体系安装的 Django 版本是 1.11。可是我们想要本项目基于 Django 2.x 开拓,虽然我们可以选择将体系的 Django 版本进级,但这样又也许会影响其他的项目标运行,以是这并不是一个好的选择。为了不影响体系情形的 Django 版本,以是我们可以用 Pipenv 来建设一个假造情形。

在该目次下,输入 pipenv 呼吁即可查察呼吁的完备用法:

  1. Usage: pipenv [OPTIONS] COMMAND [ARGS]... 
  2.   
  3. Options: 
  4.   --update         Update Pipenv & pip to latest. 
  5.   --where          Output project home information. 
  6.   --venv           Output virtualenv information. 
  7.   --py             Output Python interpreter information. 
  8.   --envs           Output Environment Variable options. 
  9.   --rm             Remove the virtualenv. 
  10.   --bare           Minimal output. 
  11.   --completion     Output completion (to be eval'd). 
  12.   --man            Display manpage. 
  13.   --three / --two  Use Python 3/2 when creating virtualenv. 
  14.   --python TEXT    Specify which version of Python virtualenv should use. 
  15.   --site-packages  Enable site-packages for the virtualenv. 
  16.   --jumbotron      An easter egg, effectively. 
  17.   --version        Show the version and exit. 
  18.   -h, --help       Show this message and exit. 
  19.   
  20.   
  21. Usage Examples: 
  22.    Create a new project using Python 3.6, specifically: 
  23.    $ pipenv --python 3.6 
  24.   
  25.    Install all dependencies for a project (including dev): 
  26.    $ pipenv install --dev 
  27.   
  28.    Create a lockfile containing pre-releases: 
  29.    $ pipenv lock --pre 
  30.   
  31.    Show a graph of your installed dependencies: 
  32.    $ pipenv graph 
  33.   
  34.    Check your installed dependencies for security vulnerabilities: 
  35.    $ pipenv check 
  36.   
  37.    Install a local setup.py into your virtual environment/Pipfile: 
  38.    $ pipenv install -e . 
  39.   
  40. Commands: 
  41.   check      Checks for security vulnerabilities and against PEP 508 markers 
  42.              provided in Pipfile. 
  43.   graph      Displays currently–installed dependency graph information. 
  44.   install    Installs provided packages and adds them to Pipfile, or (if none 
  45.              is given), installs all packages. 
  46.   lock       Generates Pipfile.lock. 
  47.   open       View a given module in your editor. 
  48.   run        Spawns a command installed into the virtualenv. 
  49.   shell      Spawns a shell within the virtualenv. 
  50.   uninstall  Un-installs a provided package and removes it from Pipfile. 
  51.   update     Uninstalls all packages, and re-installs package(s) in [packages] 
  52.              to latest compatible versions. 

接下来我们起首验证一下当前的项目是没有建设假造情形的,挪用如下呼吁:

  1. pipenv --venv 

功效如下:

  1. No virtualenv has been created for this project yet! 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读