趣学python 类和对象

在python中,对象是由类class定义的

 thing 
buhuodong huodong
jiaju dongwu
zhuozi burudongwu
  changjinglu
建立一个树状图,用拼音了,

class thing:
	pass
8.1定义一个最大的类thing

pass表示没有别的信息了,一般新定义函数或类时使用。

定义子类 buhuodong,huodong它们都是thing的子类。,thing是它们的父类

class thing:
	pass
class buhuodong(thing):
	pass

class huodong(thing):
	pass

家具是属于不活动类buhuodong的子类,

桌子是属于家具的子类,定义所有表格中出现的类

class thing:
	pass
class buhuodong(thing):
	pass

class huodong(thing):
	pass

class jiaju(buhuodong):
	pass

class zhuozi(jiaju):
	pass

class dongwu(huodong):
	pass
class burudongwu(dongwu):
	pass
class changjinglu(burudongwu):
	pass
因为只是定义没有详细信息,所以不需要写具体内容,否则定义类完整的格式是

class ClassName(object):
			"""docstring for ClassName"""
			def __init__(self, arg):
				super(ClassName, self).__init__()
				self.arg = arg
8.2增加属于类的对象

长颈鹿有cjl_1,cjl_2两个对象。object

cjl_1 = changjinglu()
cjl_2 = changjinglu()
这两行代码,告诉python,创建一个属于长颈鹿类的对象,并把它赋值给 cjl_1,cjl_2。

8.3 定义类中的函数

def __init__(self, arg):
				super(ClassName, self).__init__()
				self.arg = arg
在class中添加它的函数

class thing:
	def this_is_a_function_about_thing():
		print('thing is something we can feel!')
	def function2():
		print('thing is something we can see it!')

比如在thing这个类中添加两个函数,this_is_a_function_about_thing()和function2()。

8.4用函数来 表示类的特征

动物 呼吸
 移动
 吃食物
哺乳动物 幼崽吃奶
长颈鹿 吃树叶
把动物们的属性当成函数定义到类里

class dongwu(huodong):
	def breathe(self):
		pass
	def move(self):
		pass
	def eat_food(self):
		pass
仍然是先不写具体内容,先加一个空壳子

self参数是用来从类中的一个函数调用类中,(包括父类中)的另一个函数的

接着在定义哺乳动物和长颈鹿的特征,同样用函数。

class burudongwu(dongwu):
	def feed_young_milk(self):
		pass
class changjinglu(burudongwu):
	def eat_high(self):
		pass
8.5为什么使用类和对象

因为之前定义的对象,两个长颈鹿,可以通过.  调用它的类长颈鹿,和父类,哺乳动物,动物,活动的,他们的函数。

只需要使用运算符.和函数的名字来调用对象的函数。

cjl_1 = changjinglu()
cjl_2 = changjinglu()
cjl_2.move
cjl_1.eat_high
cjl_1.eat_food
其中,move,eat_food,是动物的属性,

eat_high是长颈鹿的属性,

class dongwu(huodong):
	def breathe(self):
		print('breathing')
	def move(self):
		print('moving')
	def eat_food(self):
		print('eating food')

class burudongwu(dongwu):
	def feed_young_milk(self):
		print('feed_young_milk')
class changjinglu(burudongwu):
	def eat_high(self):
		print('eat_high')
这样用最简单的方式来 表面函数的动作,加print

所有程序如下,

class thing:
	def this_is_a_function_about_thing():
		print('thing is something we can feel!')
	def function2():
		print('thing is something we can see it!')
	
class buhuodong(thing):
	pass

class huodong(thing):
	pass

class jiaju(buhuodong):
	pass

class zhuozi(jiaju):
	pass

class dongwu(huodong):
	def breathe(self):
		print('breathing')
	def move(self):
		print('moving')
	def eat_food(self):
		print('eating food')

class burudongwu(dongwu):
	def feed_young_milk(self):
		print('feed_young_milk')


class changjinglu(burudongwu):
	def eat_high(self):
		print('eat_high')

cjl_1 = changjinglu()
cjl_2 = changjinglu()

cjl_2.move()
cjl_1.eat_high()
cjl_1.eat_food()

执行结果
===================== RESTART: C:/Python27/lianxi/23.py =====================
moving
eat_high
eating food





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值