千锋教育-做有情怀、有良心、有品质的职业教育机构

python函数重载吗

来源:千锋教育
发布时间:2023-11-09 03:20:45
分享

python中是不支持函数重载的,但在python3中提供了这么一个装饰器functools.singledispatch,它叫做单分派泛函数,可以通过它来完成python中函数的重载,让同一个函数支持不同的函数类型,它提供的目的也正是为了解决函数重载的问题。

看下面的例子,应该知道怎么去使用它完成函数的重载。

fromfunctoolsimportsingledispatch

@singledispatch

defshow(obj):

print(obj,type(obj),"obj")

@show.register(str)

def_(text):

print(text,type(text),"str")

@show.register(int)

def_(n):

print(n,type(n),"int")

show(1)

show("xx")

show([1])

结果为:

1int

xxstr

[1]obj

以上内容为大家介绍了python培训之函数重载吗,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • python选择perl还是python Perl,一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。Perl借取了C、sed、awk、shell脚本语言以及很多其他
  • python列表怎么删除元素 python中关于删除list中的某个元素,一般有三种方法:remove、pop、del:1.remove:删除单个元素,删除首个符合条件的元素,按值删除举例说明:>>>str=[1,2,3,4,5,
  • python如何定义变量 在python学习过程中会用到许多数据,那为了方便操作,需要把这些数据分别用一个简单的名字代表,方便在接下来的程序中引用。变量就是代表某个数据(值)的名称。python变量赋值如何定义操作注:pyth
  • python模块是什么 python中模块的概念python中的模块是什么?简而言之,在python中,一个文件(以“.py”为后缀名的文件)就叫做一个模块,每一个模块在python里都被看做是一个独立的文件。模块可以被项目
  • python如何选择python版本? Python3.7已经发布了,目前Python的用户,主要使用的版本应该是Python3.6和Python2.7,那么是不是该转到Python3.7呢?首先大家要知道Python3.7是对Python
  • pythonpython是函数式编程吗? 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元。