当前位置: 移动技术网 > IT编程>脚本编程>Python > python 父类方法中使用不同的子类中的不同类对象

python 父类方法中使用不同的子类中的不同类对象

2019年12月14日  | 移动技术网IT编程  | 我要评论

韩露抄袭,郑恩地,长沙美莱

 1 # coding:utf-8
 2 
 3 
 4 class animal(object):
 5     def __init__(self):
 6         self._name = none
 7         self._f = none
 8 
 9     def eat(self):
10         print("%s吃%s" % (self._name, self._f().food()))
11 
12 
13 class dog(animal):
14     def __init__(self):
15         animal.__init__(self)
16         self._f = dogfood
17         self._name = "狗"
18 
19 
20 class dogfood():
21     def food(self):
22         return "狗粮"
23 
24 
25 class cat(animal):
26     def __init__(self):
27         animal.__init__(self)
28         self._name = "猫"
29         self._f = catfood
30 
31 
32 class catfood():
33     def food(self):
34         return "猫粮"
35 
36 
37 dog = dog()
38 dog.eat()
39 cat = cat()
40 cat.eat()

狗吃狗粮
猫吃猫粮

 

 1 # coding:utf-8
 2 
 3 
 4 class catfood():
 5     def food(self, food_name):
 6         self.food_name = food_name
 7 
 8 cf = catfood
 9 
10 cf1 = catfood()
11 cf1.food("鱼")
12 cf2 = catfood()
13 cf2.food("粥")
14 
15 print(cf1.food_name)
16 print(cf2.food_name)


 

 1 # coding:utf-8
 2 
 3 
 4 class catfood():
 5     def food(self, food_name):
 6         self.food_name = food_name
 7 
 8 cf = catfood
 9 
10 cf1 = catfood()
11 cf1.food("鱼")
12 cf2 = catfood()
13 cf2.food("粥")
14 
15 print(catfood)
16 print(cf)
17 print(cf1)

<class '__main__.catfood'>
<class '__main__.catfood'>
<__main__.catfood object at 0x000000000279b320>

 

cf catfood 是类对象

cf1是实例对象

 

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网