问题
I'm trying to write 2/3 compatible code using six
, but I don't see how I can call super()
in a cross-compatible manner. Is there some better way besides, for example:
class MyClass(MyBase):
def __init__():
if six.PY3:
super().__init__()
else:
super(MyClass, self).__init__()
...
回答1:
Using super() with arguments is backwards compatible, so you should just be able to use super(MyClass, self)
without needing to check the version.
来源:https://stackoverflow.com/questions/21768391/how-can-i-call-super-so-its-compatible-in-2-and-3