python重载
来源:互联网 发布:手柄要下载什么软件 编辑:程序博客网 时间:2024/04/30 20:10
说起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.b
a = Info()
b = Info()
print a + b
def __init__(self):
self.a = 11
self.b = 22
def __add__(self,x):
return self.a * self.b
a = Info()
b = Info()
print a + b
上面的例子是重写了+操作符号,你也可以重载其他的运算符。比如你可以重载乘号运算符
0 0
- python重载
- Python运算符重载
- Python重载学习手记
- Python运算符重载
- python 类 成员,重载
- Python运算符重载
- Python运算符重载
- python 操作符重载
- Python运算符重载
- python 函数重载
- python 重载运算符
- Python运算符重载
- Python实现函数重载
- python重载运算符
- python操作符重载
- python 函数重载
- python运算符重载
- Python 运算符重载
- 2017年2月规划
- redis执行Lua脚本报"attempt to compare number with string"错误的解决方法
- QTP自动化测试之VBScript基础(下)
- 流量控制与令牌桶算法
- WordPress 无法使用the_content()方法输出内容
- python重载
- 自定义view的构造方法和样式主题
- html技巧总结
- pat-basic-1036-c语言
- Anaconda使用总结
- Qt::QList 转为 QVariant
- Material Design中(视图和阴影详解)
- springmvc4 mybatis 整合 框架源码 bootstrap html5 mysql oracle sqlsever spring SSM
- localStorage的存储数组对象的方式