Python 3.5输入自定义类型

时间:2016-05-06 08:02:35

标签: python-3.x typechecking mypy

我有一个调用API的方法,并且API使用包含两个键的dict进行响应:allowner(它实际上是Github api获取给定存储库的提交活动)

我正在使用新集成的typing模块/系统进入Python 3.5,我想知道是否可以创建一个实际指定返回的Dict应该包含这两个的自定义类型键(allowner

这是我到目前为止所拥有的:

TypeRepositoryCommitActivity = Dict[str, List]

这些显然是组合在一起的原始类型,所以我该如何更深入地执行?

1 个答案:

答案 0 :(得分:1)

typing中可用之前,您可以使用mypy扩展功能:

from mypy_extensions import TypedDict

TypeRepoCommits = TypedDict('TypeRepoCommits', {'all': str, 'owner': str})

x: TypeRepoCommits = {'all': 'a', 'owner': 'b'} # pass type check
y: TypeRepoCommits = {'all': 1, 'owner': 'b'} # fail type check