Python中__init__和self的意义和作用

 

init()方法,在创建一个对象时默认被调用,不需要手动调用

#init方法
class Car():
    def __init__(self):
         self.num = 4
         self.color = '红色'
    def taxi(self):
        print("出发去西湖!")
#创建对象
test = Car()
print("车的颜色为:%s"%test.color)
print("车轮胎的数量:%s"%test.num)

'''结果输出:'''

#车的颜色为:红色
#车轮胎的数量:4

 

有了__init__方法,在创建实例的时候,就不能传入空的参数了,必须传入与__init__方法匹配的参数,但self不需要传,Python解释器自己会把实例变量传进去:

如果不传参数的话则会报错:TypeError: __init__() missing 2 required positional arguments: 'name' and 'age'

#init方法
class Sutdent:
    def __init__(self,name,age):
         self.name = name
         self.age = age
    def taxi(self):
        print("出发去西湖!")
#创建对象
test = Sutdent('Sample_天',3)
print("学生姓名:%s"%test.name)
print("学生年龄:%s"%test.age)

#学生姓名:Sample_天
#学生年龄:3



 

posted on 2020-04-08 22:52  Sample_天  阅读(998)  评论(0编辑  收藏  举报

导航