“pyoverload”通过简单地使用typehints和添加装饰符“@overloadload”来重载函数。
pyoverload的Python项目详细描述
PY过载
pyoverload
是项目^{python v3.6+
提供简单的重载。pyoverload
提供多种用法。然而,最简单的方法可以很容易地实现如下。在
>>>frompyoverloadimportoverload>>>@overload...deffunc(x:int):...print("func1",x)...>>>@overload...deffunc(x:str):...print("func2",x)...>>>func(1)func11>>>func("1")func21
pyoverload
具有以下所有吸引人的功能:
- 关键字装饰器
@overload
支持Jedi
自动完成。这意味着所有主流pythonide都可以提示您定义的重载函数。在 - 多种用法对所有类型的用户都是友好的,包括
C/Java
语言系统用户和习惯于基于{}的重载的用户。此外,还提供了普通python函数的简单收集器。在 - 支持各种函数,包括函数、方法、类方法和静态方法。一个简单的实现。在
- ^支持{str 1}$String类型。这意味着可以使用
"numpy.ndarray"
来标记numpy数组,而无需导入整个包。在 - 提供了足够的内建类型以便于表示,例如
List[Int]
、Dict@{str: int}
或{}。在 - Available usage list当没有重载函数与输入参数匹配时。在
- Type约束,用于使用
@params
修饰符的普通函数。在
- 项目
标签: