Tutorial document
未关闭
还没有人认领这个 Issue。
topic: documentation
- 主要语言
- Python
- 星标
- 1.8k
- 派生
- 302
- 平均合并
- 23 小时
- 30 天内合并 PR
- 8
描述
Thoughts on the tutorial document.
Basic Topics
- Set up a basic venv with a pinned mypy version. (For compatibility reasons.) Should add a note about using a current version in production.
- Annotating variables.
- Annotating functions and methods.
- Unions, using
| None Anycast()and# type: ignore- Using generics, variance
- Built-in collections
- Type aliases
int/floatNoReturn(not strictly necessary, but a fairly easy topic)- Installing third-party stubs
Advanced Topics
The are fairly complicated topics, but basically required when typing a non-trivial code base:
Callable- Writing generics
- Protocols
type[...]typing.TYPE_CHECKINGand circular importsTypeVarandAnyStr- overloads
Literal
What not to include
# typeannotations (except# type: ignore)
The following topics could arguably be included, but for simplicity's sake, I'd suggest to skip them in this basic tutorial:
NewTypeClassVarFinalAnnotatedNamedTupleTypedDict
Other Thoughts
- We can use a newer version of Python (e.g. 3.8+) for simplicity and add a note that not all features are available in older Python versions.
- We should probably just use
from __future__ import annotationsand skip the whole forward references/quoting types problem.
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
issue 中没有指定 tutorial 文件、入口点或测试。首先定位现有的 tutorial 文档,并将其与提议的基础主题和高级主题列表进行比较。完成的标准是就 tutorial 的范围、Python 版本指导、包含的 typing 主题和排除项达成一致,然后记录这些决定。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- documentation
- Issue 类型
- 文档
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100