可视化对象(str/repr/bytes)

  • __repr__ 对应repr(object)这个函数,返回一个可以用来表示对象的可打印字符串
  • __str__ 对应str(object)这个函数,返回一个字符串对象,适合用于print输出
  • __bytes__ 对应bytes(object)这个函数,返回bytes对象
class B:
    def __init__(self,name):
        self.name = name
        
    def __repr__(self):
        return 'call __repr__ name is {0}'.format(self.name)
    
    def __str__(self):
        return 'call __str__ name is {0}'.format(self.name)
    
    def __bytes__(self):
        return 'call __bytes__ name is {0}'.format(self.name).encode('utf-8')
 b = B('zhaochj') 
1 b 
2 call __repr__ name is zhaochj 
1 print(b)
2 call __str__ name is zhaochj
1 str(b)
2 'call __str__ name is zhaochj'
1 bytes(b)
2 b'call __bytes__ name is zhaochj'

 

  

posted @ 2019-05-25 09:54  旧梦一场  阅读(167)  评论(0编辑  收藏  举报