Python 方法重载
在 Python 中,你可以通过多种方式调用方法来定义方法。给定单个方法或函数,我们可以指定自己的参数数量。
根据函数定义,可以使用零个、一个、两个或更多参数调用它。
这称为*方法重载。*并非所有编程语言都支持方法重载,但 Python 确实如此。
方法重载示例
我们用一个方法 sayHello()
创建一个类。此方法的第一个参数设置为 None
,这使我们可以选择是否使用参数调用它。
基于类创建对象,并使用零和一个参数调用其方法。
#!/usr/bin/env python
class Human:
def sayHello(self, name=None):
if name is not None:
print 'Hello ' + name
else:
print 'Hello '
obj = Human()
obj.sayHello()
obj.sayHello('Guido')
输出:
Hello
Hello Guido
为了澄清方法重载,我们现在可以通过两种方式调用方法 sayHello()
:
obj.sayHello()
obj.sayHello('Guido')
我们创建了一个方法,可以使用比定义允许的参数更少的参数调用。
我们不限于两个变量,你的方法可以有更多可选的变量。