类和面向对象

 1 def dog(name,age):
 2     def chishi(dog1):
 3         print('一条[%s]正在吃屎' % dog['name'])
 4     def init(name,age):
 5         dog1={
 6 
 7             'name':name,
 8             'age':age,
 9             'chishi':chishi
10         }
11         return dog1
12     return init(name,age)
13 dog=dog('李磊',18)
14 print(dog['age'])
15 print(dog['chishi'](dog))
16 
17 #---------------------------------面向对象class----------------------------------
18 class Dogs:
19     def __init__(self,name, age):
20             self.name= name,
21             self.age=age
22     def chishi(self):
23         print('一条[%s]正在吃屎' % self.name)
24 
25 dog2=Dogs('李磊',18)
26 dog2.chishi()

 类:

 1 class Chinese:
 2     '这是一个中国人的类'
 3 
 4     dang=''
 5 
 6     # def __init__(name,age,gender):
 7     #     dic={
 8     #         'name':name,
 9     #         'age':age,
10     #         'gender':gender
11     #     }
12     #     return dic
13     def __init__(self,name,age,gender):
14         # print('我是初始化函数,我开始运行了')
15         self.mingzi=name  #p1.mingzi=name
16         self.nianji=age   #p1.nianji=age
17         self.xingbie=gender
18         # print('我结束啦')
19 
20     def sui_di_tu_tan(self):
21         print('%s 朝着墙上就是一口痰' %self.mingzi)
22     def cha_dui(self):
23         print(self)
24         print('%s 插到了前面' %self.mingzi)
25 
26     def eat_food(self,food):
27         print('%s 正在吃%s' %(self.mingzi,food))
28 
29 p1=Chinese('元昊',18,'female') #--->__init__(self,name,age,gender)
30 p1.sui_di_tu_tan()
31 p1.eat_food('')

注:实例对象在调用方法时候会默认传入self,类调用方法的时候不会默认传入self

类的init方法初始化实例的时候 只会初始化init方法内的数据属性不会初始化方法,如果实例要调用方法,现在实例里面找,找不到再导类中去找;

类的增删改

 1 class Chinese:
 2     country='China'
 3     def __init__(self,name):
 4         self.name=name
 5 
 6     def play_ball(self,ball):
 7         print('%s 正在打 %s' %(self.name,ball))
 8 p1=Chinese('alex')
 9 print(p1.__dict__)
10 
11 #查看
12 # print(p1.name)
13 # print(p1.play_ball)
14 
15 #增加
16 p1.age=18
17 print(p1.__dict__)
18 print(p1.age)
19 
20 #不要修改底层的属性字典
21 # p1.__dict__['sex']='male'
22 # print(p1.__dict__)
23 # print(p1.sex)
24 
25 #修改
26 p1.age=19
27 print(p1.__dict__)
28 print(p1.age)
29 
30 #删除
31 del p1.age
32 print(p1.__dict__)
原文地址:https://www.cnblogs.com/jiawen010/p/9947642.html