python是一门动态言语,不需要声明变量范例,函数中能够接收任何范例的参数也就没法依据参数范例来支撑重载,python没有必要去斟酌参数的范例题目,这些都能够在函数内部推断处置惩罚,并没有必要去在写一个函数。python 有多种传参体式格局,默许参数/可变参数/可变关键字参数能够处置惩罚函数参数中参数可变的题目。
python3.4中增添的重载机制
在python3.4中提供有一个转发机制来完成重载
from functools import singledispatch @singledispatch def function(obj): print('%r'%(obj)) @function.register(int) def function_int(obj): print('Integer: %d'%(obj)) @function.register(str) def function_int(obj): print('String: %s'%(obj)) @function.register(list) def function_list(obj): print('List: %r'%(obj)) if __name__ == "__main__": function(1) function('hello') function(range(3)) function(object)
以上就是python有重载吗的细致内容,更多请关注ki4网别的相干文章!