zoukankan      html  css  js  c++  java
  • pipenv

    新一代Python项目环境与依赖管理工具

    之前一直用的是python -m venv <虚拟环境名称>来创建虚拟环境,这样做的缺点是太麻烦了,因为创建之后还要进去激活虚拟环境。更麻烦的是还要手动创建依赖(requirements.txt),更新依赖。
    

    看到这个pipenv之后发现应该挺好用的,准备试一试。

    1. 安装Pipenv

    pip install pipenv

    1. 创建虚拟环境

    pipenv install
    Pipenv会自动为你创建虚拟环境,自动生成一个随机的虚拟环境目录名。

    1. 显式激活虚拟环境

    pipenv shell
    此外,Pipenv还提供了一个pipenv run命令,在该命令后附加的参数会直接作为命令在虚拟环境中执行,这允许你不必显式的激活虚拟环境即可在虚拟环境中执行命令。比如,pipenv run python会启动虚拟环境中的Python解释器。

    1. 安装依赖到虚拟环境

    pipenv install flask
    事实上,对一个新项目来说,你不必手动使用pipenv install来创建虚拟环境。当使用pipenv install xxx直接安装依赖包时,如果当前目录不包含虚拟环境,Pipenv会自动创建一个。

    1. 记录依赖

    使用Pipenv时,什么都不必做,Pipenv会自动帮你管理依赖。Pipenv会在你创建虚拟环境时自动创建Pipfile和Pipfile.lock文件(如果不存在),前者用来记录项目依赖包列表,而后者记录了固定版本的详细依赖包列表,会在你使用pipenv install和pipenv uninstall命令安装和卸载包时自动更新Pipfile和Pipfile.lock。
    Pipfile 文件中记录了3件事情:
    1.包从哪里下载的
    2.需要下载哪些包, * 表示始终下载最新版本, dev-packages 表示专用于开发阶段使用的包。
    3.Python 版本是多少
    Pipfile.lock 文件详细记录了这些包的信息,包括这个包的hash值多少,还有包所依赖的其他包有哪些。
    把这些信息写在 Pipfile 文件中的好处是,当我们把项目部署到正式环境时,不再需要一个一个去安装了,直接执行 pipenv install 就会自动创建虚拟环境的同时,把 Pipfile 中包都安装好。

    1. 项目环境迁移部署
      把原环境的Pipfile Pipfile.lock文件拷贝到新环境中,直接如下执行即可

    pipenv install

    1. 区分依赖

    pipenv install pytest --dev
    仅安装在开发环境

    1. 列出当前虚拟环境的依赖包

    pipenv graph

    9.生成依赖包

    pipenv lock -r > requirements.txt

    1. 使用 requirements.txt 来安装包依赖

    pipenv install -r requirements.txt

    1. 删除虚拟环境

    pipenv --rm

    1. vscode 配置pipenv虚拟环境

    https://segmentfault.com/a/1190000017558652
    13.有时候手动改了 Pipfile 之后需要手动执行一下 lock 命令来生成新的 Pipfile.lock
    pipenv lock

  • 相关阅读:
    python高级之操作数据库
    算法之矩阵计算斐波那契数列
    Mysql操作初级
    python高级之生成器&迭代器
    python高级之装饰器
    python高级之多进程
    python高级之多线程
    操作系统IO模型
    python高级之网络编程
    python高级之面向对象高级
  • 原文地址:https://www.cnblogs.com/plusUltra/p/10619446.html
Copyright © 2011-2022 走看看