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

python笔记: 类中的__str__ 函数

2017-10-12 14:02 337 查看
如果要把一个类的实例变成 str,就需要实现特殊方法__str__():

不使用__str()__ 时

class Member:

def __init__(self , name , number):

self.name = name
self.number = number

# def __str__(self):
#     return ('Information: name:%s,number:%d' %(self.name , self.number))

m = Member('wang', 3000)
print(m)
'''
<__main__.Member object at 0x000001897F9886A0>
'''


使用__str()__ 时:

class Member:

def __init__(self , name , number):

self.name = name
self.number = number

def __str__(self):
return ('Information: name:%s,number:%d'
%(self.name , self.number))
__repr__ = __str__
'''
__repr__ = __str__ 使用时可保证在控制台>>> m 时 任然输出
Information: name:wang,number:3000
'''

m = Member('wang', 3000)
print(m)
'''
Information: name:wang,number:3000
'''


class Manager(Member):
def __init__(self , name , number , year):
super(Manager , self).__init__(name , number)
self.year = year

def __str__(self):
return ('Information: name:%s,number:%d , year:%s'
%(self.name , self.number , str(self.year)))

M1 = Manager('bob' , 15 , 2017)
print(M1)

'''
Information: name:bob,number:15 , year:2017
'''
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python