我希望能够找到一种方法,通过只使用print object
就自动打印出对象引用名称。
更具体地说,
假设我有一个类:
class A:
def __init__(self):
self.cards = []
def __str__(self):
# return a string representation of A
return "A contains " ...
...
现在,每当我创建一个对象时。
test = A()
如果我使用print test
,会得到类似以下内容(不用在意点号)
A contains ...
我想要实现的是自动打印对象引用名称,而不是类名:
test contains ...
"
self.__class__
"或"self.__name__
"不能使用,因为它们返回一个奇怪的字符串,如"<class '__main__.A'>
"。要实现这个,应该如何实现 "__str__
"方法呢?谢谢。"
print object
只是打印它本身而不是它的类。 - BugShotGG