Làm thế nào để nối Object
với một chuỗi (nguyên thủy) mà không quá tải và loại diễn viên rõ ràng (str()
)?Làm thế nào để nối `Object` bằng một chuỗi?
class Foo:
def __init__(self, text):
self.text = text
def __str__(self):
return self.text
_string = Foo('text') + 'string'
Output:
Traceback (most recent call last):
File "test.py", line 10, in <module>
_string = Foo('text') + 'string'
TypeError: unsupported operand type(s) for +: 'type' and 'str'
hành +
phải bị quá tải? Có cách nào khác không (chỉ tự hỏi)?
PS: Tôi biết về quá tải khai thác và gõ đúc (như str(Foo('text'))
)
Kết quả mong đợi của bạn trong _string là gì? "chuỗi văn bản"? – Rod
Tôi muốn trả về một chuỗi. chỉ cần tự hỏi! – tomas
Tại sao bạn không muốn sử dụng 'str' để buộc đối tượng vào một chuỗi? – Marcin