3

Brython とstrメソッドによる継承を使用すると、奇妙な状況に遭遇しました。Brython コンソールを使用したテストは次のとおりです。

>>> class A(object):
...     def __str__(self):
...         return "A __str__ output."
... 
>>> class B(A):
...     def __str__(self):
...         return super().__str__() + " (from B)"
... 
>>> x = A()
>>> x
<__main__.A object>
>>> y = B()
>>> y
<__main__.B object>
>>> str(y)
"<super: <class 'B'>, <B object>> (from B)"

最後の行が返されることを期待していました:

"A __str__ output. (from B)"

ここで何か間違ったことをしていますか?

4

2 に答える 2