猪冰龙

导航

python小练习--函数调用函数,让对象具有能动性

 

 

 1 class Box:#定义一个类名为Box,类名后不必有括号,类包含类属性和类方法,这个类没有定义类属性
 2     '''这是一个计算体积的类'''#这是这个类的__doc__属性,执行类后就可以在交互界面输入Box.__doc__查看这行说明文字了
 3     openstate=0
 4     def __init__(self):#这是类的构造函数,当实例化Box后会自动调用这个__init__方法
 5         self.length=0.0 #这是实例属性,在类内访问用self.length,在类外访问用  实例名.length
 6         self.width=0.0
 7         self.height=0.0
 8         self._color='red'       
 9         self.__valum=0.0#双下换线开头的变量表示私有变量,所以他为私有实例属性,只能在类内访问到
10     def set_color(self,color):
11         self._color=color    
12         
13     def computevalum(self):#定义了一个类方法。
14         self.__valum=self.length*self.width*self.height
15         print('长度=',self.length,'宽度=',self.width,'高度=',self.height,'valum=',self.__valum)
16 
17     def info_color(self):
18         #self.set_color(self._color)#在类中,函数调用函数的方式
19         print('Box的颜色为',self._color)
20 
21     def open_box(self):
22         if Box.openstate==0:
23             print('打开了Box')
24             Box.openstate=1
25         else:
26             print('Box已经打开了,不能重复打开')
27 if __name__=='__main__':       
28     computa=Box() #实例化Box类
29     computa.length=1
30     computa.width=2
31     computa.height=3
32     computa.computevalum()
33     computa.set_color ('yellow')
34     computa.info_color()
35     computa.open_box()
36     print('')
37 
38     computb=Box()#实例化Box类
39     computb.length=2
40     computb.width=2
41     computb.height=3
42     computb.computevalum()
43     computb.set_color ('black')
44     computb.info_color()
45     computb.open_box()

 

posted on 2017-06-04 22:20  猪冰龙  阅读(1169)  评论(0编辑  收藏  举报