Pipenv管理Python項目

簡介

    Pipenv,它的項目簡介爲 Python Development Workflow for Humans,是 Python 著名的 requests 庫做者 kennethreitz 寫的一個包管理工具,它能夠爲咱們的項目自動建立和管理虛擬環境並不是常方便地管理 Python 包,咱們能夠簡單理解爲 pip、Pipfile 和 virtualenv 的集合體,它能夠爲咱們的項目自動建立和管理一個虛擬環境。如今它也已是 Python 官方推薦的包管理工具。python

總的來講,Pipenv 能夠解決以下問題:linux

  • 咱們不須要再手動建立虛擬環境,Pipenv 會自動爲咱們建立,它會在某個特定的位置建立一個 virtualenv 環境,而後調用 pipenv shell 命令切換到虛擬環境。
  • 使用 requirements.txt 可能會致使一些問題,因此 Pipenv 使用 Pipfile 和 Pipfile.lock 來替代之,並且 Pipfile 若是不存在的話會自動建立,並且在安裝、升級、移除依賴包的時候會自動更新 Pipfile 和 Pipfile.lock 文件。
  • 普遍使用 Hash 校驗,保證安全性。
  • 能夠更清晰地查看 Python 包及其關係,調用 pipenv graph 便可呈現,結果簡單明瞭。
  • 可經過自動加載 .env 讀取環境變量,簡化開發流程。

安裝

首先請確保安裝了python和對應的pip。算法

$ pip install pipenv

檢查當前目錄是否有虛擬環境

$ pipenv --venv

設置虛擬環境建立位置(可選)

設置環境變量PIPENV_VENV_IN_PROJECT=1shell

linux系統中可在.bash_profile或.bashrc中加入flask

export PIPENV_VENV_IN_PROJECT=1

windows系統就要在 控制面板 -> 系統 -> 高級系統設置 -> 高級 -> 環境變量 中添加。windows

建立虛擬環境

# 以當前系統安裝的python版本爲基礎建立虛擬環境
# 先進入項目目錄
$ pipenv install

# 下面的命令不推薦使用,由於這些命令並不能自動下載安裝相應版本的python,而是在系統中尋找已有的python
# 建立python3的虛擬環境
$ pipenv --three

# 建立python2的虛擬環境
$ pipenv --two

# 建立具體版本的虛擬環境
$ pipenv --python 3.7

建立虛擬環境後,會在項目目錄下生成兩個文件Pipfile和Pipfile.lock。這兩個文件是pipenv包的配置文件,代替virsualenv的requirement.txt文件。安全

使用版本管理工具進行項目提交時,可將Pipfile文件和Pipfile.lock文件一併提交,待其餘開發克隆下載,根據此Pipfile運行命令pipenv install生成本身的虛擬環境。bash

Pipfile.lock文件是經過hash算法將包的名稱和版本,以及依賴關係生成哈希值,能夠保證包的完成性。工具

在控制檯中激活虛擬環境

相似使用visualenv時的activateui

$ pipenv shell

刪除虛擬環境

$ pipenv --rm

顯示虛擬環境信息

$ pipenv --venv

查看已安裝包和依賴關係

$ pipenv graph

安裝Python第三方模塊包

$ pipenv install flask

卸載Python第三方模塊包

# 卸載具體模塊包
$ pipenv uninstall flask

# 卸載全部模塊包
$ pipenv uninstall --all

安裝全部在Pipfile.lock文件中指定的包

$ pipenv sync
相關文章
相關標籤/搜索