Я получаю эту ошибку
TypeError: super() принимает не менее 1 аргумент (задано 0)
используя этот код на python2.7.11:
class Foo(object):
def __init__(self):
pass
class Bar(Foo):
def __init__(self):
super().__init__()
Bar()
Обходной путь для его работы:
class Foo(object):
def __init__(self):
pass
class Bar(Foo):
def __init__(self):
super(Bar, self).__init__()
Bar()
Кажется, что синтаксис специфичен для python 3. Итак, что лучший способ предоставить совместимый код между 2.x и 3.x и избежать этой ошибки?