【发布时间】:2011-09-30 03:25:26
【问题描述】:
我有课
class FooBar(object):
def __repr__(self):
pass
我想实现__repr__ 函数。由于我将 FooBar 用作一种方便的容器,并且我动态添加了一些属性,因此我也想动态生成 __repr__。 (如果这是不好的做法,请解释并启发我:-))
我想到了类似的东西:
def __repr__(self):
return '<FooBar({WHAT IS ELEGANT AND GOES HERE?})>'.format(**self.__dict__)
有什么建议吗?谢谢!
【问题讨论】:
-
信息不够具体。主观。你的选择。它会包含什么样的东西?
-
问题是:为什么要使用动态属性?例如,您不能使用字典吗?在您的示例中,您可以有一个属性来存储字符串
'<FooBar ...>'并在 repr 中执行self.yourstring.format,但是,我认为您最好使用其他选项。
标签: python printing instance-variables