PyConChina2022-上海-用GitHub完成Python的全技术栈开发-卢建晖用 GitHub 完成 Python 的全技术栈开发 主讲人:卢建晖 – Microsoft Regional Cloud Advocate GitHub 程序员必备 编码是每位开发者所必备的 从入门第一步开始 为开发者配置环境是企业的重要一步 ? $ 配置 冲突 金钱 挫败 GitHub Codespaces 你的云端开发环境 一键即用,无需配置您的开发环境。 开启你的 GitHub0 码力 | 24 页 | 4.86 MB | 1 年前3
 3 Thautwarm 解放python的表达力 性能和安全性 语法和语义扩展 JIT 静态检查 In Time The Restrain Python JIT 为什么编译器从字节码开始着手? 栈机(stack machine)语义的优化问题? Julia后端和Cython后端的差别? 栈机到基于寄存器(register based)的 语义,控制流分析,SSA 和 Φ 节点和 栈机语义消除。 Cython JIT 基础架构。 为什么编译器从字节码开始着手? 因为运行时一旦开始你是拿不到源代码的。 指令集减小到15以内 混合IR tmp = Call(x, (1, 2)) Python字节码 LOAD_FAST f LOAD_CONST (1, 2) CALL_FUNCTION 1 混合是指Stack Machine和 Register-based Machine语义共存 为何不最直接翻 译成寄存器语义? 不懂的同学大概这样理解: 栈机就是Push Pop: “放到栈上两个值,做了一个二元运算,两个值被消耗 “放到栈上两个值,做了一个二元运算,两个值被消耗, 得到一个值放回栈上, 栈上元素减1”。 寄存器机就是赋值赋值赋值赋值,我赋给你,你赋给他, push pop不占主导地位。可以模拟栈机。 栈机的Jump指令,导致翻译到寄存器语义不简单呐。 为何不最直接翻译成寄存器语义? Push a Push b Push c A: Jump B if true Push d B: Pop to e e0 码力 | 43 页 | 10.71 MB | 1 年前3
 Python 标准库参考指南 3.10.15 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 754 16.13 curses.panel --- curses 的面板栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756 16.13.1 函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1764 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1765 29.10.1 TracebackException 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1786 29.13.5 解释器栈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1789 29.13.60 码力 | 2207 页 | 10.45 MB | 9 月前3
 Python 标准库参考指南 3.9.20 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730 16.13 curses.panel --- curses 的面板栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 16.13.1 函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1713 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1714 29.10.1 TracebackException 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1734 29.13.5 解释器栈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1736 29.13.60 码力 | 2146 页 | 10.17 MB | 9 月前3
 Python 标准库参考指南 3.10.15 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . 702 viii 16.13 curses.panel --- curses 的面板栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704 16.13.1 函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1652 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1653 29.10.1 TracebackException 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1672 29.13.5 解释器栈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1675 29.13.6 静态地获取属性0 码力 | 2072 页 | 10.39 MB | 9 月前3
 Python 标准库参考指南 3.9.20 ASCII 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . 681 16.13 curses.panel --- curses 的面板栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683 16.13.1 函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1603 xvii 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1604 29.10.1 TracebackException 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1622 29.13.5 解释器栈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1624 29.13.6 静态地获取属性0 码力 | 2015 页 | 10.12 MB | 9 月前3
 Python 标准库参考指南 3.8.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 16.13 curses.panel --- curses 的 panel 栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712 16.14 platform --- 获取底层平台的标识数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1707 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1708 29.11 __future__ --- Future 语句定义 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接口, 例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模块则提供 针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 Python 中可用;另一些模块仅在 底层系统0 码力 | 2052 页 | 9.74 MB | 9 月前3
 Python 标准库参考指南 3.8.20 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.13 curses.panel --- curses 的 panel 栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 16.14 platform --- 获取底层平台的标识数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1596 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597 29.11 __future__ --- Future 语句定义 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接 口,例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模 块则提供针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 Python 中可用;另 一些模块仅在底层系统0 码力 | 1927 页 | 9.69 MB | 9 月前3
 Python 标准库参考指南 3.8.20 字符的工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.13 curses.panel --- curses 的 panel 栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 16.14 platform --- 获取底层平台的标识数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1596 29.10 traceback ——打印或读取栈回溯信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597 29.11 __future__ --- Future 语句定义 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接 口,例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模 块则提供针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 Python 中可用;另 一些模块仅在底层系统0 码力 | 1927 页 | 9.69 MB | 9 月前3
 Python 标准库参考指南 3.7.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665 16.13 curses.panel --- curses 的 panel 栈扩展 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 16.14 platform --- 获取底层平台的标识数据 . 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接口, 例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模块则提供 针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 Python 中可用;另一些模块仅在 底层系统 模式编译多行代码字符串时,输入必须以至少一个换行符结尾。这 使code 模块更容易检测语句的完整性。 警告: 在将足够大或者足够复杂的字符串编译成 AST 对象时,Python 解释器有可以因为 Python AST 编译器的栈深度限制而崩溃。 在 3.2 版更改: 允许使用 Windows 和 Mac 的换行符。在 'exec' 模式不再需要以换行符结尾。增加了 optimize 形参。 在 3.5 版更改: 之前 source0 码力 | 1961 页 | 9.14 MB | 9 月前3
共 109 条
- 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 11
 













