0
我有一個簡單的類我創建:如何從列表中打印對象
class C:
def __init__(self):
self.a = 1
,我想用我創建了一個功能打印從這個類對象的列表:
def p(s):
print('hi ', s)
這就是我想要打印的功能p
:p([C() for i in range(3)])
不幸的是,這產生了hi [<__main__.C object at 0x000000F92A8B9080>, <__main__.C object at 0x000000F92AB0E898>, <__main__.C object at 0x000000F92AB0E978>]
。
我認爲這個問題是由於不執行__str__
,所以我改變了我的類分爲:
class C:
def __init__(self):
self.a = 1
def __str__(self):
return str(self.a)
,但我得到了相同的結果:(
我希望是什麼hi [1, 1, 1]
或hi 1, 1, 1
什麼這樣,沒有對象的存儲位置,我創建。
我可以使用
for i in range(3): p(C())
但我想傳遞一個對象列表到p
函數,而不是爲我的每個對象調用它。那可能嗎?
您需要實現'__repr__'的'__str__'對'list'使用'__repr__'對象包含。 –