Pipenv旨在將最好的包管理機制(bundler, composer, npm, cargo, yarn等等)帶到Python中去。shell
它會爲你的項目自動建立和管理virtualenv,也會在安裝和移除包時自動同步Pipfile
,還生成了Pipfile.lock
文件描述了固定版本,以便在生產環境中構建。npm
Pipenv主要解決了如下問題:安全
pip
和virtualenv
,如今他們被合併了。Pipfile
和Pipfile.lock
來抽象分開依賴定義sudo pip install pipenvcomposer
進入項目編輯器
cd myproject
從Pipfile文件中安裝ui
pipenv install
或者爲項目指定加入packageurl
pipenv install <package>
若是Pipfile
文件不存在時會建立一個,若是存在就會對其進行編輯,加入新包。插件
接下來激活Pipenv shell:code
pipenv shell
退出ip
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" > .env pipenv shell echo $FOO
Pycharm當前已經支持pipenv包管理插件。