08 Pipenv和Python包管理 明希
Python的依赖管理及Pipenv @frostming 我是谁? • 研发效能·持续集成@Tencent • 从 2014 年开始用 Python,前测试,现开发 • 开源爱好者 • Pipenv 维护者之一 队长别开枪,是我! 目录 CONTENTS 为什么需要虚拟环境 为什么需要依赖管理 Pipenv 的简单使用 Python 包管理的未来 为什么需要虚拟环境 你是否遇到过这些问题: ... pip ? + 我们为什么需要依赖管理 pip 是否已经足够使用? 它的依赖管理有什么问题? 碰到这些问题,该怎么办? 依赖冲突 $ pip install celery django-celery $ pip install celery $ pip install django-celery django-celery 依赖 celery>=3.1.15,<4.0 PyPI 上 celery 最新版 4.3.0 BOOM! requirements.txt 呢? Flask requests • 抽象依赖 • 开发环境使用 • 倾向使用最新版本 • 方便变更 Flask==1.0.2 itsdangerous==1.1.0 Click==7.0 Jinja2==2.10.3 MarkupSafe==1.1.1 werkzeug==0.16.00 码力 | 24 页 | 1.24 MB | 1 年前3Django、Vue 和Element UI 前后端原理论述
接口进行数据传输和交互,从而实现一个完整的 Web 应用。 3 《51 测试天地》七十四 www.51testing.com 二、搭建流程 2.1 后端搭建流程 安装相关包->创建工程->后端依赖(pipenv)创建虚拟环境->后端服务配置启动->后 端创建子应用->后端 Rest Framework->数据库配置 简要说明: 安装相关包:在开始之前,首先需要安装 Python 和 pip,然后安装 projectname。 后端依赖(pipenv)创建虚拟环境:建议使用 pipenv 来创建和管理虚拟环境,以便 隔离项目的依赖和环境。 后端服务配置启动:在虚拟环境下,通过 Django 的 manage.py 启动服务,例如:python manage.py runserver。 后端创建子应用:根据项目的需要,可以创建多个子应用(app)来管理不同的功能 模块。 后端 Rest 创建工程(模板)->前端依赖(npm install )->前端服务配置启动 简要说明: 创建工程(模板):可以使用 Vue 脚手架工具或其他模板工具来创建 Vue 项目的初始 结构。 前端依赖(npm install):在项目目录下执行 npm install 命令,安装项目所需的前端 4 《51 测试天地》七十四 www.51testing.com 依赖包,这些依赖包通常存储在 package0 码力 | 61 页 | 6.84 MB | 1 年前3Flask入门教程
保持全局环境的干净 指定不同的依赖版本 方便记录和管理依赖 我们将使用 Pipenv 来创建和管理虚拟环境、以及在虚拟环境中安装和卸载依赖 包。它集成了 pip 和 virtualenv,可以替代这两个工具的惯常用法。另外,它还集 成了 Pipfile,它是新的依赖记录标准,使用 Pipfile 文件记录项目依赖,使用 Pipfile.lock 文件记录固定版本的依赖列表。这两个文件替代了手动通过 通过 requirements.txt 文件记录依赖的方式。 我们首先使用 pip 安装 Pipenv,Windows 系统使用下面的命令: $ pip install pipenv Linux 和 macOS 使用下面的命令: $ sudo -H pip install pipenv 使用 Pipenv 创建虚拟环境非常简单,使用 pipenv install 命令即可为当前项 为当前目录创建一个 Python 解释器环境,按照 pip、setuptool、virtualenv 等 工具库。 如果当前目录有 Pipfile 文件或 requirements.txt 文件,那么从中读取依赖列表 并安装。 如果没有发现 Pipfile 文件,就自动创建。 创建虚拟环境后,我们可以使用 pipenv shell 命令来激活虚拟环境,如下所示 (执行 exit 可以退出虚拟环境):0 码力 | 127 页 | 7.62 MB | 1 年前3python3学习手册
直 接 wget h�ps://www.python.org/�p/python/3.10.3/Python- 3.10.3.tgz 下载目标版本源码包,并上传到目标linux服务器上 安装依赖: # yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel \ readline-devel ★struct.pack()返回的是bytes类型,不可变量 ★第11章、模块,包 包是一个分层次的文件目录结构,它定义了一个由模块及子包组成的 python应用环境 包是一种管理python模块命名空间的形式 包是一个文件夹,包文件夹下必须存在__init__.py文件,该文件可以为 空 (__init__.py文件用于标识当前文件夹是一个包)包下的其他*.py文件 为模块定义文件 test-001.exe -F 将所有文件打包为一个单独的可执行文件 -D 将所有文件打包为一个目录,包含可执行文件和所有依赖的 文件 --hidden-import 跟若干个依赖的程序文件 -n 指定生成的.exe文件名称,若未指定则默认同第1个主程序文 件名(.py后缀改为.exe) -w 指0 码力 | 213 页 | 3.53 MB | 1 年前3Python 标准库参考指南 3.10.15
字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.11 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.12 类型注解的类型 基于密钥的消息验证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 15.3.1 随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603 16.1.7 进程管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624 16.1.80 码力 | 2207 页 | 10.45 MB | 9 月前3Python 标准库参考指南 3.10.15
1 字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 4.11 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.12 类型注解的类型 基于密钥的消息验证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 15.3.1 随机数 . . . . . . . . . 文件和目录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561 16.1.7 进程管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 16.1.8 调度器接口0 码力 | 2072 页 | 10.39 MB | 9 月前3Python 标准库参考指南 3.13
字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 i 4.12 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.13 类型注解的类型 . . . . . . . . . . . 492 12.5.2 dbm.gnu --- GNU 数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492 12.5.3 dbm.ndbm --- 新数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . 用于消息验证的密钥哈希 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613 15.3.1 随机数 . . . . . . . . .0 码力 | 2246 页 | 11.74 MB | 9 月前3Python 标准库参考指南 3.13
字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 i 4.12 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.13 类型注解的类型 . . . . . . . . . . . 488 12.5.2 dbm.gnu --- GNU 数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 12.5.3 dbm.ndbm --- 新数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . 用于消息验证的密钥哈希 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 15.3.1 随机数 . . . . . . . . .0 码力 | 2242 页 | 11.73 MB | 9 月前3Python 标准库参考指南 3.12
1 字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.12 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 i 4.13 类型注解的类型 . . . . . . . . . . . 472 12.5.1 dbm.gnu --- GNU 数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 12.5.2 dbm.ndbm --- 新数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . 用于消息验证的密钥哈希 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 15.3.1 随机数 . . . . . . . . .0 码力 | 2253 页 | 11.81 MB | 9 月前3Python 标准库参考指南 3.12
1 字典视图对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.12 上下文管理器类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 i 4.13 类型注解的类型 . . . . . . . . . . . 472 12.5.1 dbm.gnu --- GNU 数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 12.5.2 dbm.ndbm --- 新数据库管理器 . . . . . . . . . . . . . . . . . . . . . . . . . . 用于消息验证的密钥哈希 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 15.3 secrets --- 生成管理密码的安全随机数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 15.3.1 随机数 . . . . . . . . .0 码力 | 2253 页 | 11.81 MB | 9 月前3
共 150 条
- 1
- 2
- 3
- 4
- 5
- 6
- 15