gpt4 book ai didi

python - 定义要在 python 中动态创建的 __repr__(self)

转载 作者:行者123 更新时间:2023-11-28 18:54:10 24 4
gpt4 key购买 nike

我有课

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({!r})>'.format({'a':1, 'b':2})
"<FooBar({'a': 1, 'b': 2})>"

在 Python2.6 上你必须使用 {0!r}

我觉得

'<FooBar({!r})>'.format(vars(self))

比引用 .__dict__ 更好

关于python - 定义要在 python 中动态创建的 __repr__(self),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6605631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com