如何在python中自定义打印对象?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
class AttrDisplay: def gatherAttrs(self): return ",".join("{}={}" .format(k, getattr(self, k)) for k in self.__dict__.keys()) # attrs = [] # for k in self.__dict__.keys(): # item = "{}={}".format(k, getattr(self, k)) # attrs.append(item) # return attrs # for k in self.__dict__.keys(): # attrs.append(str(k) + "=" + str(self.__dict__[k])) # return ",".join(attrs) if len(attrs) else 'no attr' def __str__(self): return "[{}:{}]".format(self.__class__.__name__, self.gatherAttrs())
OK,似乎所有的工作都已经完成了,来简单测试一下吧:
class Bean(AttrDisplay): def __init__(self, id=1024, name='Jack Chen', job='Actor'): self.id = id self.name = name self.job = job def doSomething(self): return self.name + " doing something now ..." if __name__ == '__main__': bob = Bean() print(bob) # [Bean:id=1024,name=Jack Chen,job=Actor]
python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身。2.面向对象,与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。3.可移植性,Python程序无需修改就可以在各种平台上运行。4.解释性,Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。5.开源,Python是 FLOSS(自由/开放源码软件)之一。
关于如何在python中自定义打印对象问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。