Benjamin

静以修身,俭以养德,非澹薄无以明志,非宁静无以致远。
随笔 - 237, 文章 - 0, 评论 - 196, 引用 - 0
数据加载中……

python 重载实现

python 有多种传参方式,默认参数/可变参数/可变关键字参数可以处理函数参数中参数可变的问题。
python3.4中增加的重载机制,示例:
python重载
说明:
@singledispatch装饰一个函数,将定义一个泛型函数
泛函数的register()属性是一个装饰器。对于有类型注释的函数,这个装饰器将自动匹配第一个参为该类型的已注册函数重载泛函数:
如果用泛函数的register()属性进装饰的函数的参数没有类型注释,那么我们可以在register()装饰器中明确声明合适的类型:
泛涵数将选择离调用最近的可分派的函数,即,泛函数将分派在顺序上最后定义的函数。
经过测试,python不支持多参数的重载。

posted on 2019-07-08 09:13 Benjamin 阅读(7) 评论(0)  编辑 收藏 引用 所属分类: 杂谈


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理