Python 类型标注之追本溯源
前言
本文是 Python 与 Type Annotations 的续作. 主要是回顾在那篇文章之前的 Python 类型标注(即 Python 3.6 以及之前版本), 并不过多涉及新的类型标注使用. 主要作用是追本溯源, 固实基础. 接下来我应该还会出一篇介绍这两年来 Python 在类型标注方面的新进展.
本来呢是想两篇写成一篇的, 但是发现光是回顾历史就占据了过多篇幅, 索性分为两篇, 一篇往前, 一篇往后, 也是一件美事.
所谓类型标注之本, 在下面的 PEP 里:
- PEP 3107 - Function Annotations : 最早的类型标注相关 PEP, 描述了对函数参数与返回值做标注的语法
- PEP 526 – Syntax for Variable Annotations : 描述了对变量做标注的语法
- PEP 482 – Literature Overview for Type Hints : 描述了 Python 在设计类型标注的语义时参考了哪些语言/工具/实现
- PEP 483 – The Theory of Type Hints : 简要说明了标注应该如何作为 “类型提示” 使用
- PEP 484 – Type Hints : 正式且详细地描述了标注如何作为 “类型提示” 使用
我抽出时间来通读了上面的 PEP, 下面便是我在其中看到的一些或有趣或意料之外的事实 (以及吐槽与思考).