您的位置:首页 > 编程语言 > Python开发

python学习七(类中魔法方法、应用)

2017-08-16 20:14 633 查看
1、类中的魔法方法

class Student:

        def __init__(self):

                self.age=18

                self.name='wangdi'

                self.sex=1

        def __str__(self):

                msg = "姓名:%s,年龄:%d,性别:%d"%(self.name,self.age,self.sex)

                return msg

stu = Student()

print(stu)

如果没有写__str__方法,打印对象,结果展示的就是内存地址

2、应用

#encoding=utf-8
class home:
def __init__(self, area):
self.area = area
self.furniture = []

def addFurniture(self, bed):
if bed.area > self.area:
print(bed.getBedName()+"面积太大:%d"%bed.area)
else:
self.furniture.append(bed)
self.area = self.area - bed.area

def __str__(self):
msg = "剩余面积为%d平方米"%self.area

if len(self.furniture) > 0:
msg += ",家具有"
for tmp in self.furniture:
msg +=tmp.getBedName()+"、"
return msg[:-2];

class bed:

def __init__(self, area, name):
self.area = area
self.name = name

def getBedName(self):
return self.name

myHome = home(180)

print myHome
print("*"*30)

mybed1 = bed(30,"席梦思床")
myHome.addFurniture(mybed1)
print myHome

print("*"*30)

mybed2 =  bed(30,"大木床")
myHome.addFurniture(mybed2)
print myHome

print("*"*30)

mybed3 =  bed(170,"超级大木床")
myHome.addFurniture(mybed3)
print myHome
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: