面向对象基础
1 class Person: #定义一个Person类;类名后面可以加括号,也可以不加。类名第一个字要大写 2 def __init__(self,name,age,job): #每一个类一定要有一个__init__()方法,方法后面必须要至少有一个self参数(名字可以另起) 3 #这个函数会再实例化类的时候自动执行 4 self.name = name #将传递过来的参数赋值给类的属性 5 self.age = age #self 其实是一个字典,里面包含了实例化对象的信息 6 self.job = job #属性名可以与参数名不同 7 8 def speak(self,language): #定义一个类的方法,方法至少要包含一个self参数,可以有另外的参数 9 return '%s会说%s'%(self.name,language) 10 11 def eat(self,food): 12 return '%s正在吃%s'%(self.name,food) 13 14 ming = Person('小明',18,'学生') #实例化一个类的对象,参数要与类的__init__方法的参数对应 15 print(ming.name) #可以通过 实例化名.属性 查看其属性 16 print(ming.age) 17 print(ming.job) 18 19 print(ming.__dict__['name']) #也可以通过 ming.__dict__['name']方法查看其属性 20 21 print(ming.speak('汉语')) #通过 实例化名.类的方法名 的方法调用其方法 22 print(ming.eat('面条')) 23 24 print(Person.eat(ming,'面条')) #也可以通过 类.方法(实例化名,参数) 的方式调用其方法 25 26 print(ming.__dict__) #每个实例都有一个dick 27 print(Person.__dict__) #每个类也都有一个dick