Pythonic type metadata;Declarative Json and Yaml transcoding.
pytyp的Python项目详细描述
pytyp以一种一致的pythonic方式使用abc和函数注释,即
支持声明性api,而不是说明如何做某事,而是能够说出所需的内容。
与语言紧密集成:
>;>;ISINSTANCE([1,2,none,4],seq(opt(int))
true
*类型检查函数的装饰器::
>;>;仅定义str(x:str):返回“foo”
>;>;仅限str_(42)
引发异常:
…
类型错误:str类型与42不一致。
*允许按类型动态分派的装饰符。可以在一个名称下组合多个
方法,然后选择由参数的
类型调用的方法(普通的oo编程使用“self”类型来选择
方法;这更像lisp的multimethods)。
*用于在python类和json或yaml之间转换的例程。您可以直接将json读入
python类,而不必使用“dict”和“list”。这是声明式api的一个例子,可以用类型规范描述输出的形式。
https://pypi.python.org/pypi/pyyaml>;``如果您想对yaml进行编码/解码。
警告:此包未使用且大部分未维护。python以一种“不同的方向”进行
https://www.python.org/dev/peps/pep-0484/>;`
使用类型。
支持声明性api,而不是说明如何做某事,而是能够说出所需的内容。
与语言紧密集成:
>;>;ISINSTANCE([1,2,none,4],seq(opt(int))
true
*类型检查函数的装饰器::
>;>;仅定义str(x:str):返回“foo”
>;>;仅限str_(42)
引发异常:
…
类型错误:str类型与42不一致。
*允许按类型动态分派的装饰符。可以在一个名称下组合多个
方法,然后选择由参数的
类型调用的方法(普通的oo编程使用“self”类型来选择
方法;这更像lisp的multimethods)。
*用于在python类和json或yaml之间转换的例程。您可以直接将json读入
python类,而不必使用“dict”和“list”。这是声明式api的一个例子,可以用类型规范描述输出的形式。
https://pypi.python.org/pypi/pyyaml>;``如果您想对yaml进行编码/解码。
警告:此包未使用且大部分未维护。python以一种“不同的方向”进行
https://www.python.org/dev/peps/pep-0484/>;`
使用类型。