发布时间:2022-04-01 09:53:46 人气:224 作者:多测师
在 java 中构造函数是与类同名的,而且会伴随着实例化的动作而执行。在 python 中呢?
python 中的构造函数叫做 init 方法,全名是 __init__
具体看下面代码
class Person():
__gender = 'male'
__age = '0'
def __init__(self, gender='male', age=0):
self.__gender = gender
self.__age = age
person1 = Person('female', 10)
person2 = Person()
person2 = Person('male')
作为实例方法, self 入参当然少不了,其他参数就按照顺序排开,若参数不够,就用默认值来代替。
str 方法怎么写?
在java 中, 我们一般会覆盖 toString() 方法来返回对象中包含的值得关注的信息。 python 中也有这样一个方法,叫做 __str__。
class Person:
__name = 'Tom'
__gender = 'male'
__age = 10
def __str__(self):
return ('name: %s, gender:%s, age:%d' % (self.__name, self.__gender, self.__age))
person = Person()
print(person)
作为最佳实践的一部分,建议你在每个创建的类中都覆盖这个方法。
多态是什么?
还记得面向对象的几个特征吗?封装性,继承性,多态性。嗯,来聊下 python 对多态的实现。
什么叫做多态?
在 java 中,如果在一个 class 中有多个函数,函数名相同而参数不同(个数或类型不同),就叫做多态。
而在 python 中, 多态的概念则更进一步,对于同一个函数,如果能够处理多种类型的数据,也叫做多态。
tuple_list = [(1, 2,), (2, 3,), (4, 5)]
list = [1, 2, 3, 4]
dict1 = {
'a' : 1,
'b' : 2
}
def printSomething(something):
for i in something:
print(i)
print(tuple_list)
print(dict1)
print(list)
printSomething 一个函数可以同时打印元组,列表以及字典,充分发挥代码复用的功效,是不是很方便。
以上内容为大家介绍了Python构造函数该怎么写?,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/