Vâng đoạn python console tương tác này sẽ nói lên tất cả:Làm thế nào để áp dụng __str__ chức năng khi in một danh sách các đối tượng trong Python
>>> class Test:
... def __str__(self):
... return 'asd'
...
>>> t = Test()
>>> print(t)
asd
>>> l = [Test(), Test(), Test()]
>>> print(l)
[__main__.Test instance at 0x00CBC1E8, __main__.Test instance at 0x00CBC260,
__main__.Test instance at 0x00CBC238]
Về cơ bản tôi muốn để có được ba asd
chuỗi in khi tôi in danh sách. Tôi cũng đã thử pprint
nhưng nó cũng cho kết quả tương tự.
Từ tài liệu được cung cấp trong câu trả lời, có vẻ như tôi không cần định nghĩa __str__ nếu __repr__ được sử dụng. Cảm ơn về thông tin bạn vừa nhập. – dvim
@Blink_: Tùy thuộc vào chính xác bạn muốn gì. Sử dụng lớp tôi đã định nghĩa, so sánh đầu ra của 'print Test()' với 'print [Test()]'. –