Python中类的介绍
创建和使用类
创建Dog类,赋予dog蹲下(sit())和打滚(roll_over())的能力
class Dog():
def __init__(self,name,age):
self.name=name;
self.age=age;
def sit(self):
print(self.name.title()+" is now sitting.")
def roll_over(self):
print(self.name.title()+" rolled over!")
方法_init_()是一个特殊的方法,相当于构造方法,每当创建新实例时,Python都会自动运行它
_init_()中的形参self必不可少,还必须位于其他形参的前面。创建实例时不用给self传递值
后面的两个方法由于不需要额外的信息,因此只有一个形参self,变量都有前缀self,以self为前缀的变量
可供类中的所有方法使用。self.name=name获取存储在形参name中的值,并将其存储到变量name中,然后
该变量被关联到当前创建的实例。
根据类创建实例
my_dog=Dog('stupy',3)
这里使用上面的Dog类创建了一个名为‘stupy’、年龄为3的my_dog实例
访问属性
my_dog.name获取名字,my_dog.age获取年龄
调用方法
my_dog.sit() my_dog.roll_over()
给属性指定默认值
比如上例默认为公狗,则在_init_()函数中创建一个性别属性并设置初始值,self.sex='gong'
修改属性的值
1.直接修改属性的值
接上例,使用句点表示法来直接访问并设置小狗的属性name。
my_dog.name='clever'
2.通过方法修改属性的值
相当于java中的set方法
例:def update_name(self,newname)
self.name=newname
my_dog.update_name('wuwu')
这样就无需直接访问属性,而可以将值传递给一个方法,由它在内部进行更新