Potrzebuję utworzyć klasę, która używa innej klasy bazowej w zależności od pewnych warunków. W niektórych klasach I dostać niesławny:python 3: TypeError: konflikt metaklowy: metaclass klasy pochodnej musi być (nie ścisłą) podklasą metaclasses wszystkich jej baz
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
Jednym z przykładów jest sqlite3, oto krótki przykład można nawet użyć w tłumacza:
>>> import sqlite3
>>> x = type('x', (sqlite3,), {})
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
>>>
Jak mogę rozwiązać ten problem?
Dzięki.
'sqlite3' to moduł, a nie "klasa". – agf
@agf: Właśnie na to patrzyłem i zrozumiałem to samo, kiedy to opublikowałeś. – jdi
Dzięki, agf, masz rację! sqlite3.Connection sprawia, że działa. –