I ran across a weird situation using Brython and inheritance with the str method. Here's my test using the Brython console:
>>> 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)"
I was expecting that last line to return:
"A __str__ output. (from B)"
Am I doing something wrong here?