类,对象,列表
用Python写一个用类创建房子和床,把床存到房子里,报出一共放置了多少张床。
1.在下面代码中“beds”类下的“abed”方法中,“while”循环下需要写一个调用父类的语句,当然还要在“beds”类的括号内写入“house”,意思是继承自“house”。
super().__ init __()
注:在这里强调,我写的是调用父类的“init”方法,这后面的名字是按照相对应的调用方法名称去写。
2.“house”类中所写的“str”魔法方法为了打印初始化的“name”和“area”,分别是名字和面积。而且一定要有返回值,否则程序会打印“None”.
这里我所写的房名是固定值,也可以在创建实例对象的时候传入一个值。
class house():
def __init__(self):
self.name = "绿野别墅"
self.area = 2000
self.list = []
def __str__(self):
msg = "我住在%s,面积:%d"%(self.name,self.area)
return msg
class beds(house):
def __init__(self):
self.name = "海斯创品"
self.size = 0
def abed(self):
a = 0
while True:
a+=1
super().__init__()
#print("-------------1------------")
self.size += 10
self.list.append(self.size)#保存床的大小到列表
if self.size >= self.area:#如果床的大小,大于房子的面积打印床位已满
print("床位已满,总共放置了%d张床"%a)
break
lyxz = house()
#print(lyxz.name)
#print(lyxz.area)
print(lyxz)
hscp = beds()
hscp.abed()
for i in hscp.list:
print("总面积是:%d"%i)
下面是最终执行的结果!
我住在绿野别墅,面积:2000
床位已满,总共放置了200张床
总面积是:2000
日常小练习,如有错误的地方,烦请关注后发简信告之,Thaks.