Python 3的功能重载
项目描述
overloading 是一个模块,它根据运行时参数的类型和数量提供函数和方法调度。
当调用重载函数时,调度器将提供的参数与可用的签名进行比较,并调用提供最精确匹配的实现
@overload
def biggest(items: Iterable[int]):
return max(items)
@overload
def biggest(items: Iterable[str]):
return max(items, key=len)
>>> biggest([2, 0, 15, 8, 7])
15
>>> biggest(['a', 'abc', 'bc'])
'abc'
功能
在注册期间对函数进行验证,以及全面的解析规则,保证在调用时有一个明确的结果。
支持Python 3.5中引入的 typing 模块。
支持可选参数。
支持可变签名 (*args 和 **kwargs).
支持类/静态方法。
评估位置和关键字参数。
不依赖标准库之外的任何依赖项
文档
完整的文档可在 https://overloading.readthedocs.org/ 查找。
项目详情
下载文件
下载适用于您平台的应用程序。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。
源分布
overloading-0.5.0.tar.gz (11.1 kB 查看哈希值)
构建发行版
overloading-0.5.0-py3-none-any.whl (11.0 kB 查看哈希值)
关闭
overloading-0.5.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 493f0f67211244ed6bf2acf9f3ac61fb38e8aa87834c4f0f84d8943512066588 |
|
MD5 | d8c8d99965eb2208100e4adeb8b154ad |
|
BLAKE2b-256 | 196cdbc5ddff9eec6b57046c11985d28ebac2f8073596a7cc903c76f26856284 |
关闭
overloading-0.5.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c28d2a227cfb6bdefcfe0ded055bc620a5c784a52ecadc441f8d6c281b8bb1c1 |
|
MD5 | 4294b83ece23add75b6dcb06fc0641a2 |
|
BLAKE2b-256 | 3bd1775dec1fb1e2a600d587adfef9aafba7b0b995532b3bc63a5a927446a8ce |