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 年前3
PyWebIO v1.2.3 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 102 页 | 1.67 MB | 1 年前3
PyWebIO v1.2.2 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 102 页 | 1.69 MB | 1 年前3
PyWebIO v1.2.3 使用手册如果你接触过Web开发,你可能对接下来描述的PyWebIO的用法感到不太习 惯,不同于传统Web开发的后端实现接口、前端进行展示交互的模式,在 PyWebIO中,所有的逻辑都通过编写Python代码实现。 你可以按照编写控制台程序的逻辑编写PyWebIO应用,只不过这里的终端变成 了浏览器。通过PyWebIO提供的命令式API, 你可以简单地调用 put_text 、 put_image 、 put_table 等函数 put_table 、 popup 、 put_widget 等函数中作为输出的一 部分, 并且,在输出后,还可以对其中的内容进行修改(比如重置或增加内 容): 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: popup('Popup title', [ put_html('Popup Content
'), 'plain html: ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见 输出函数列表 事件回调 从上面可以看出,PyWebIO把交互分成了输入和输出两部分:输入函数为阻塞 式调用,会在用户浏览器上显示一个表单,在用户提交表单之前输入函数将不 会返回;输出函数将内容实时输出至浏览器。这种交互方式和控制台程序是一 致的,因此PyWebIO应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyW0 码力 | 119 页 | 7.44 MB | 1 年前3
PyWebIO v1.2.2 使用手册如果你接触过Web开发,你可能对接下来描述的PyWebIO的用法感到不太习 惯,不同于传统Web开发的后端实现接口、前端进行展示交互的模式,在 PyWebIO中,所有的逻辑都通过编写Python代码实现。 你可以按照编写控制台程序的逻辑编写PyWebIO应用,只不过这里的终端变成 了浏览器。通过PyWebIO提供的命令式API, 你可以简单地调用 put_text 、 put_image 、 put_table 等函数 put_table 、 popup 、 put_widget 等函数中作为输出的一 部分, 并且,在输出后,还可以对其中的内容进行修改(比如重置或增加内 容): 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: popup('Popup title', [ put_html('Popup Content
'), 'plain html: ['Apple', '5.5'], 支持上下文管理器的完整函数清单请见 输出函数列表 事件回调 从上面可以看出,PyWebIO把交互分成了输入和输出两部分:输入函数为阻塞 式调用,会在用户浏览器上显示一个表单,在用户提交表单之前输入函数将不 会返回;输出函数将内容实时输出至浏览器。这种交互方式和控制台程序是一 致的,因此PyWebIO应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyW0 码力 | 119 页 | 7.41 MB | 1 年前3
PyWebIO v1.3.1 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 111 页 | 1.70 MB | 1 年前3
PyWebIO v1.3.3 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 111 页 | 1.70 MB | 1 年前3
PyWebIO v1.3.2 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 111 页 | 1.70 MB | 1 年前3
PyWebIO v1.3.0 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text 、put_image 、put_table 等函数输出文本、图片、表格 put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 111 页 | 1.70 MB | 1 年前3
PyWebIO v1.4.0 使用手册开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后 端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 PyWebIO 提 供的命令式 API,你可以简单地调用 put_text() 、put_image() 、put_table() put_markdown('**Coding**')) # insert the Coding into the top of the␣ �→hobby 上下文管理器 一些接受 put_xxx() 调用作为参数的输出函数支持作为上下文管理器来使用: with put_collapse('This is title'): for i in range(4): put_text(i) put_table([ ['Banana', '7'], ]) 支持上下文管理器的完整函数清单请见输出函数列表 事件回调 从上面可以看出,PyWebIO 把交互分成了输入和输出两部分:输入函数为阻塞式调用,会在用户浏览器上显 示一个表单,在用户提交表单之前输入函数将不会返回;输出函数将内容实时输出至浏览器。这种交互方式 和控制台程序是一致的,因此 PyWebIO 应用非常适合使用控制台程序的编写逻辑来进行开发。 此外,PyWebIO0 码力 | 115 页 | 1.70 MB | 1 年前3
共 231 条
- 1
- 2
- 3
- 4
- 5
- 6
- 24













