Python环境管理-Pipenv

Python环境管理-pipenv

虚拟环境

在Python中,虚拟环境(virtual enviroment)就是隔离的Python解释器环境。通过创建虚拟环境,你可以拥有一个独立的Python解释器环境。这样做的好处是可以为每一个项目创建独立的Python解释器环境,因为不同的项目常常会依赖不同版本的库或Python版本。使用虚拟环境可以保持全局Python解释器环境的干净,避免包和版本的混乱,并且可以方便地区分和记录每个项目的依赖,以便在新环境下复现依赖环境。

pip

pip是用来安装Python包的工具,新版本的Python默认安装了此工具

  • 查看版本
pip --version
  • 安装包
pip install packageName
  • 以上命令会从PyPI(https://pypi.org)(是一个Python包的在线仓库)下载依赖
  • packageName不区分大小写,一般都是小写

pipenv

Pipenv是基于pip的Python包管理工具,它和pip的用法非常相似,可以看作pip的加强版,它的出现解决了旧的pip+virtualenv+requirements.txt的工作方式的弊端。具体来说,它是pip、Pipfile和Virtualenv的结合体,它让包安装、包依赖管理和虚拟环境管理更加方便,使用它可以实现高效的Python项目开发工作流

安装

pip install pipenv
pipenv --version

新建

cd到项目目录(仓库pull下来的),执行命令pipenv install:

$ pipenv install
Creating a virtualenv for this project...
Pipfile: /Users/caolipin/Repository/helloflask/Pipfile
Using /usr/local/bin/python3 (3.8.5) to create virtualenv...
⠹ Creating virtual environment...created virtual environment CPython3.8.5.final.0-64 in 814ms
  creator CPython3Posix(dest=/Users/caolipin/pyenv/helloflask-X1lLbtwO, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/caolipin/Library/Application Support/virtualenv)
    added seed packages: pip==20.2.4, setuptools==50.3.2, wheel==0.35.1
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

✔ Successfully created virtual environment!
Virtualenv location: /Users/caolipin/pyenv/helloflask-X1lLbtwO
Installing dependencies from Pipfile.lock (733065)...
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 30/30 — 00:00:13
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
  • pipenv install命令会创建一个新的虚拟环境,然后自动从Pipfile中读取依赖并安装到新创建的虚拟环境中。
  • 在创建虚拟环境时,如果项目根目录下没有Pipfile文件,pipenv install命令还会在项目文件夹根目录下创建Pipfile和Pipfile.lock文件
    • Pipfile:记录项目依赖包列表
    • Pipfile.lock:记录固定版本的详细依赖包列表。
    • 使用Pipenv安装/删除/更新依赖包时,Pipfile以及Pipfile. lock会自动更新,无须手动维护。
  • PIPENV_VENV_IN_PROJECT设置虚拟环境存放目录的虚拟环境名称,方便统一管理多个虚拟环境

激活

显示激活

直接激活进入到虚拟环境

pipenv shell

非显示激活

在全局的Python解释器环境使用虚拟环境中的Python解释器执行脚本

pipenv run hello.py
  • pipenv run是更推荐的做法,因为这个命令可以让你在执行操作时不用关心自己是否激活了虚拟环境

退出

exit

安装依赖

pipenv install package
  • Pipenv会自动帮我们管理虚拟环境,所以在使用pipenv install package执行安装Python包时,无论是否激活虚拟环境,包都会安装到虚拟环境中

更新依赖

pipenv update package

查看依赖

查看当前环境下的依赖情况

pipenv graph
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • pipenv 是Python.org正式推荐的python包管理工具。它完美的解决了python版本及包的管理问题...
    华阳_3bcf阅读 4,478评论 2赞 5
  • 一、什么是 pipenv pipenv 主要包含了Pipfile、pip、requests和virtualenv。...
    深度堕落阅读 1,617评论 0赞 0
  • 1. Pipenv 管理虚拟环境 虚拟环境可以使用Python为项目创建一个独立的环境,能够解决不同项目使用不同版...
    crossWuchang阅读 704评论 0赞 2
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 8,274评论 16赞 22
  • 创业是很多人的梦想,多少人为了理想和不甘选择了创业来实现自我价值,我就是其中一个。 创业后,我由女人变成了超人,什...
    亦宝宝阅读 2,161评论 4赞 1

友情链接更多精彩内容