当使用repr来测试我创建的类时,我总是在我的打印值周围加上括号。
前任)
def __repr__(self):
return ("H")
在 shell 中作为 [H, H, H, H] 运行 4 行。我想删除括号和逗号,但不确定如何使用repr执行此操作。我是否需要创建另一个repr返回的方法?
谢谢你的帮助。
您的示例不是很清楚,但我认为以下代码可能会演示您想要的内容:
>>> class Example:
def __repr__(self):
return 'H'
>>> array = [Example() for _ in range(4)]
>>> array
[H, H, H, H]
>>> class ArrayWithoutBrackets(list):
def __repr__(self):
return super().__repr__()[1:-1]
>>> array = ArrayWithoutBrackets()
>>> for _ in range(4):
array.append(Example())
>>> array
H, H, H, H
你必须隐藏一些东西。我认为您有一个包含所有实例的列表,这就是为什么您会看到一对[
, ]
。
我没有任何这样的问题。
>>> class A:
def __repr__(self):
return "a"
>>>
>>> A()
a
我认为这似乎是你的情况:
>>> [A(),A()]
[a, a]