python重载是什么意思_python重载
说起python重载,大家学过其他的语言比如说C#语言的话,应该知道有方法重载和运算符重载的概念,但是python重载的话,有它自己的特殊性,下面我说说自己的一点看法,希望大家踊跃拍砖。
python 的重载主要包括方法重载和运算符重载。
1.python 方法重载: 其他的语言一般对于方法重载的话,主要是根据参数的类型不同或者是数量不同来区分同名的方法。而python则比较特殊,它本身是动态语言,方法的参数是没有类型的,当调用传值的时候才确定参数的类型,故对参数类型不同的方法无需考虑重载。对参数数量不同的方法,则(大多数情况下)可以采用参数默认值来实现。
比如你可以定义函数的默认值:
def info(x,y,z=1):
pass
2.python 运算符重载: 在C#中,我们通过使用关键字operator定义一个运算符方法,并定义与所在类相关的运算符行为。在 Python中,运算符重载的方式更为简单——每一个类都默认内置了所有可能的运算符方法,只要重写这个方法,就可以实现针对该运算符的重载。例如以下是重载加法操作:
class Info(object): def __init__(self): self.a = 11 self.b = 22 def __add__(self,x): return self.a * self.ba = Info()b = Info()print a + b
上面的例子是重写了+操作符号,你也可以重载其他的运算符。比如你可以重载乘号运算符,感兴趣的话,可以做做这到题目。http://bbs.cnpythoner.com/viewthread.php?tid=252&extra=
希望上面讲的2点能够让你对python重载有个简单的认识。
python重载是什么意思_python重载相关推荐
- python vector_[流畅的Python]读书笔记之十三运算符重载
运算符重载 Python 关于运算符重载的规则: 不能重载内置类型的运算符 不能新建,只能重载 某些运算符不能重载--is.and.or 和 not 一元运算符 __neg__ __pos__ __i ...
- python 类继承 父类初始化_python之子类继承父类时进行初始化的一些问题
直接看代码: classPerson:def __init__(self): self.name= "jack" classStudent(Person):def __init__ ...
- 拷贝构造函数、析构函数、赋值操作符重载、取地址操作符重载和const修饰的取地址操作符重载...
2019独角兽企业重金招聘Python工程师标准>>> 在我们学习C++的过程中,我们难免会遇到类,在类中有6个默认的函数,它们分别为:构造函数.拷贝构造函数.析构函数.赋值操作符重 ...
- C++——运算符的重载---以成员函数方式重载---以友元函数方式重载
一.运算符的重载 1.运算符的重载 允许把标准运算符(如+ - * /等运算符)应用于自定义数据类型的对象,可以提高程序的可读性,运算符的重载本质上还是函数重载.运算符仅仅是语法上的方便,它是另一种函 ...
- python log函数怎么打_Python的log日志功能及设置方法
python log函数怎么打_Python的log日志功能及设置方法_Elaine要当律师的博客-CSDN博客
- java 继承 重载_java – 使用继承的重载方法
My question is, why isn't ClassB's method being used? 不对.使用的方法是ClassB的方法,它从ClassA继承. 我认为这里的混乱背后的主要原因 ...
- python判断素数的函数_Python素数prime函数练习_Python源码实操
Python素数prime函数练习_Python源码实操 素数prime函数练习 1) 写一个函数isprime(x) 判断x是否为素数,如果是素数,返回True,否则返回False def ispr ...
- php是否直接支持函数的重载,php函数重载的替代方法--伪重载详解
对于弱类型语言来说,PHP函数重载,并不像一般的OOP那样.而弱类型本来就不区分,所以无法通过这些来实现.但是,可以通过下面的方法来实现简单的伪重载吧. 函数重载的替代方法-伪重载,下面看一个具体的实 ...
- scala 方法重载_Scala中的方法重载
scala 方法重载 Scala方法重载 (Scala method overloading) Method overloading is a method that is redefined in ...
最新文章
- node.js学习笔记之promise
- Java枚举类使用方式
- 为什么parsefloat加出来还是字符串_为什么酒店的包子做的这么好吃?里面加了什么说出来你可能不信...
- mysql使用between..and 查询日期范围注意事项
- 关于Myeclipse10的激活
- web前端开发技术现状与发展_2020年,Web前端开发有哪些发展趋势?
- 数据分析学习笔记1---zip(),numpy.where
- [leetcode]Unique Paths
- 群晖Docker套件注册Harbor私有镜像仓库,并下载运行自己发布的Docker镜像
- 华为云计算工程师证好考吗?
- 路普达-区块链技术的本质与未来应用趋势
- nginx 配置之 proxy_pass参数详解
- systemd服务详解
- MMDetection亲测安装教程
- 客户关系管理项目——用户登录模块设计
- 转载之-中值滤波均值滤波
- 北师大的计算机科学专业排名,2021北京师范大学王牌优势专业排名 什么专业最好...
- Ubuntu 16.04安装搜狗输入法
- 【笔记】PBR,BRDF总结
- sniffer是利用计算机的,利用SNIFFER技术侦测局域网中的ARP欺骗及解决方案