08 Pipenv和Python包管理 明希
Python的依赖管理及Pipenv @frostming 我是谁? • 研发效能·持续集成@Tencent • 从 2014 年开始用 Python,前测试,现开发 • 开源爱好者 • Pipenv 维护者之一 队长别开枪,是我! 目录 CONTENTS 为什么需要虚拟环境 为什么需要依赖管理 Pipenv 的简单使用 Python 包管理的未来 为什么需要虚拟环境 你是否遇到过这些问题: • virtualenvwrapper • pew • pyenv-venv • conda • direnv • ... pip ? + 我们为什么需要依赖管理 pip 是否已经足够使用? 它的依赖管理有什么问题? 碰到这些问题,该怎么办? 依赖冲突 $ pip install celery django-celery $ pip install celery $ pip (piptools) • Poetry • 没了 可用工具 Pipenv 的简单使用 • 自动创建、管理虚拟环境,与项目绑定 • 依赖解析、锁定 • 新的requirements.txt规范,基于TOML格式 • 优美的命令行界面 Pipenv Demo Python 包管理的未来 Python 包管理的未来 PEP 517 – 与构建系统无关的配置文件格式 PEP 518 – 在指定Python构建依赖0 码力 | 24 页 | 1.24 MB | 1 年前3Django、Vue 和Element UI 前后端原理论述
后端依赖(pipenv)创建虚拟环境:建议使用 pipenv 来创建和管理虚拟环境,以便 隔离项目的依赖和环境。 后端服务配置启动:在虚拟环境下,通过 Django 的 manage.py 启动服务,例如:python manage.py runserver。 后端创建子应用:根据项目的需要,可以创建多个子应用(app)来管理不同的功能 模块。 后端 Rest Framework:使用 Django 。 确保依赖一致性:虚拟环境通常会配合使用 Pipenv 等工具来管理项目的依赖,这样 可以确保项目在不同环境中安装相同的依赖版本,从而避免由于依赖版本不一致而引发 的错误。 提高项目可移植性:将项目的依赖放在虚拟环境中,可以使得项目在不同的计算机 或服务器上都能轻松地部署和运行,而不需要担心依赖问题。 简化依赖管理:虚拟环境可以将项目所需的依赖以及其版本信息保存在一个文件中 (例如 依赖的安装和管理更加 简单和自动化。 2、Pipenv 介绍 Pipenv 是 Python 的一个包管理工具和虚拟环境管理工具,它是为了解决 Python 项目 中依赖管理和虚拟环境创建的问题而开发的。Pipenv 结合了 pip(Python 的包管理工具) 和 virtualenv(Python 的虚拟环境管理工具)的功能,提供了更方便、更高级的包管理和 虚拟环境管理功能。 Pipenv0 码力 | 61 页 | 6.84 MB | 1 年前3PyConChina2022-深圳-Python Web大型项目开发进击之路-黄志武
Python大型Web项目进击 之路 主讲人: 黄志武 – 华世界集团创始人 目录 • Python web开发有什么优势 • 现在的python Web 有哪些选择 • 我们到底是在解决谁的问题 • 业务需求和技术需求哪个更重要 • 技术的价值到底在哪里 Python Web开发有什么优势 • 为什么选择python django框架做web开发 • 基于后端数据模型生成的web模板 • 快速通过模板 • 关系型数据库的ORM • 只需要编写业务实体对象模型,自动生成数据库架构 • 开发人员不需要了解和学习sql语句,快速上手增删改查 • 完善的数据库变更管理 • 开箱即用的功能 • 数据校验 • 用户模块 • 验证模块 • 管理后台 现在的python web开发有哪些选择 • 小型web python全栈开发,Django 框架仍然值得推荐 • 轻量的简洁框架 flask依然是很好的选择,不管是用来做api还是全 只要有需要web开发的,app开发的,拥有数据交互需求的,web和api后端开发需求依然是庞 大的 • 分享一个团队里的问题,别人用python都在搞AI,大数据,物联网这些新的应用领域的高精尖 新技术,我们做python web开发的还有前(钱)途吗? • 用户问题和技术问题: • 用户问题: 我饿了,不去餐馆,也能吃到某家餐厅的饭菜 • 商业模式: 我要用(app,网页,短信,电话)把用户想吃这家餐厅饭的需求传递给到餐馆,并通0 码力 | 9 页 | 722.41 KB | 1 年前3Django 官方教程翻译项目
书栈(BookStack.CN) 构建 初识 Django 初识 Django 设计模型 创建模型 享用便捷的 API 动态生成的管理页面:并非徒有其表 规划 URL 编写视图 设计模板 这只是冰山一角 Django 最初被设计用于具有快速开发需求的新闻类站点,目的是要实现简单快捷的网站开发。以下 内容简要介绍了如何使用 Django 实现一个数据库驱动的 Web 应用。 为了让您充分理解 66. # 用 delete() 来删除一个对象。 67. >>> r.delete() 动态生成的管理页面:并非徒有其表 初识 Django - 8 - 本文档使用 书栈(BookStack.CN) 构建 当你的模型完成定义,Django 就会自动生成一个专业的生产级管理页面 - 一个可以让已认证用户 进行添加、更改和删除对象的 Web 站点。你只需简单的在 admin 站点上注册你的模型即可。 register(models.Article) 这样设计所遵循的理念是,站点编辑人员可以是你的员工、你的客户、或者就是你自己——而你大概不 会乐意去废半天劲创建一个只有内容管理功能的后台管理界面。 创建 Django 应用的典型流程是:先建立数据模型,然后搭建管理站点,尽可能快的跑起来。那样 你的团队(或者客户)就可以向网站里填充数据了。后面我们会谈到如何展示这些数据。 简洁优雅的 URL 规划对于一个高质量 Web0 码力 | 103 页 | 1.86 MB | 1 年前3WeRoBot 1.10.0 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 101 页 | 73.89 KB | 1 年前3WeRoBot 1.12.0 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 103 页 | 74.49 KB | 1 年前3WeRoBot 1.10.1 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 102 页 | 73.98 KB | 1 年前3WeRoBot 1.13.1 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 105 页 | 76.25 KB | 1 年前3WeRoBot 1.10.0 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 101 页 | 73.89 KB | 1 年前3WeRoBot 1.11.0 微信公众号开发框架文档
Session 开启/关闭 Session 修改 Handler 以使用 Session WeRoBot.Client —— 微信 API 操作类 开始开发 自定义菜单 消息管理 用户管理 账户管理 素材管理 用户标签管理 模板消息 返回码都是什么意思? 48001 – API Unauthorized Message Message 公共属性 TextMessage ImageMessage 'Hello World!' robot.config['HOST'] = '0.0.0.0' robot.config['PORT'] = 80 robot.run() 注解 你需要 root 或管理员权限才能监听 1024 以下的端口。 你可以通过传递 server 参数来手动指定使用的服务器 import werobot robot = werobot.WeRoBot(token='tokenhere') gunicorn robot:robot.wsgi 就可以了。 使用 Supervisor 管理守护进程 请注意, werobot.run 是跑在 非守护进程模式下 的——也就是说,一旦你关 闭终端,进程就会自动退出。 我们建议您使用 Supervisor [http://supervisord.org/] 来管理 WeRoBot 的进程。 配置文件样例: [program:wechat_robot]0 码力 | 103 页 | 74.21 KB | 1 年前3
共 131 条
- 1
- 2
- 3
- 4
- 5
- 6
- 14