Pipenv: Python包管理神器


  Pipenv旨在將最好的包管理機制(bundler, composer, npm, cargo, yarn等等)帶到Python中去。shell

  它會爲你的項目自動建立和管理virtualenv,也會在安裝和移除包時自動同步Pipfile,還生成了Pipfile.lock文件描述了固定版本,以便在生產環境中構建。npm

  Pipenv主要解決了如下問題:安全

  咱們不須要分開使用pip和virtualenv,如今他們被合併了。composer

  維護requirements.txt有時也會遇到一些問題,Pipenv使用Pipfile和Pipfile.lock來抽象分開依賴定義編輯器

  普遍使用Hash來保證安全ui

  強力鼓勵你使用最新的依賴版本下降安全風險url

  經過 pipenv graph更直觀顯示依賴圖示插件

  經過加載.env文件來實現流線型開發工做流cdn

  安裝Pipenvblog

  sudo pip install pipenv

  Pipenv工做流程

  進入項目

  cd myproject

  從Pipfile文件中安裝

  pipenv install

  或者爲項目指定加入package

  pipenv install

  若是Pipfile文件不存在時會建立一個,若是存在就會對其進行編輯,加入新包。

  接下來激活Pipenv shell:

  pipenv shell

  退出

  exit

  更多指令

  更新某個package

  pipenv update requests

  移除某個package

  pipenv uninstall requests

  安裝到dev環境

  pipenv install -dev parsel==1.3.1

  顯示依賴圖示

  $ pipenv graph

  requests==2.20.1

  - certifi [required: =2017.4.17, installed: 2018.11.29]

  - chardet [required: =3.0.2,3.1.0, installed: 3.0.4]

  - idna [required: =2.5,2.8, installed: 2.7]

  - urllib3 [required: =1.21.1,1.25, installed: 1.24.1]

  鎖定版本

  pipenv lock

  環境變量

  若是須要在環境中加入一些環境變量,能夠將變量加入到.env文件中,在pipenv shell指令進入環境時,它會自動加載該文件的變量:

  echo FOO=BAR .envpipenv shellecho $FOO

  編輯器支持

  Pycharm當前已經支持pipenv包管理插件。

相關文章
相關標籤/搜索