class有两种初始化形式
《python从零基础到项目实践》的笔记
>>>
1.在__init__ 里直接给出初始值,之后无法更改
1 class Box1():
2 '''求立方体的体积'''
3 def __init__(self):
4 self.length = 0
5 self.width = 0
6 self.height = 0
7 def volume(self):
8 return self.length*self.width*self.height
9 B1 = Box1()
10 B1.length = 10
11 B1.weight = 10
12 B1.height = 10
13 print(B1.length)
14 print('%d'%(B1.volume()))
这里虽然第一个print的值是10,但是第二个print表示的体积的值仍然是0
2.在__init__ 里使用参数的方式初始化,之后可以更改
在定义属性的时候,就给每个属性初始化了,而每个初始化的值都是参数,也就是说这些值可以随着参数改变,传递的。
1 class Box():
2 def __init__(self,length1,width1,height1):
3 self.length = length1
4 self.width = width1
5 self.height = height1
6
7 def volume(self):
8 return self.width*self.length*self.height
9
10 box1 = Box(10, 10, 10)
11 box2 = Box(1, 2, 3)
12 print(box1.volume())
13 print(box2.volume())
14
这里第一个print的值是1000,第二个是6