overloader:在Python中实现重载
overloader:在Python中实现重载,Python中实现重载,一般都需要对参数进行识别和转化。这样做不是很直观,需要添加一些琐碎的逻辑。所以boramalper实现了overloader这个库,来帮助Python增加重载的特性。
使用了overloader的代码看起来像这样,和c++/java中的重载特性非常的相似。
importtyping
fromoverloaderimportoverload
@overload
defsimple_func(a,b):
return"Firstsimple_func"
@overloa
ddefsimple_func(a,b,c,d=32,*,ka,dka="default"):
return"Secondsimple_func"
print(simple_func(3,14))
print(simple_func(3,14,15,ka="pi"))
@overload
deftyped_func(a:typing.Union[int,float],d:typing.Dict[int,int]):
return"Firsttyped_func"
@overload
deftyped_func(a:int,b:typing.Dict[int,str]):
return"Secondtyped_func"
print(typed_func(2,{71:82}))
print(typed_func(2,{71:"astring"}))
"""
Worksfornormalmethodsandstaticmethodsaswell.
"""
classC:
@classmethod@overloaddefclass_method(cls,a:str,b:int):
return"Firstclass_method"@classmethod@overloaddefclass_method(cls,a:str,b:float):
return"Secondclass_method"
c=C()
print(c.class_method("pi",3))
print(c.class_method("e",2.7182))
如果你对这个库感兴趣,可以安装并尝试它:
pip3installoverloader
Python培训,Python学习,就选光环大数据Python培训机构!
大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服!