Sto lavorando a una sorta di lib, e per una strana ragione ho questo errore.Impossibile istanziare la classe astratta ... con metodi astratti
- Here è il mio codice. Naturalmente @ abc.abstractmethod devono essere commentata
- Here sono le mie prove
Siamo spiacenti, non poteva basta copiare e incollare
sono andato sulla base del fatto che il codice qui sotto lavori
test.py
import abc
import six
@six.add_metaclass(abc.ABCMeta)
class Base(object):
@abc.abstractmethod
def whatever(self,):
raise NotImplementedError
class SubClass(Base):
def __init__(self,):
super(Base, self).__init__()
self.whatever()
def whatever(self,):
print("whatever")
Nella shell Python
>>> from test import *
>>> s = SubClass()
whatever
Perché per il mio modulo roster Sto avendo questo errore
Can't instantiate abstract class Player with abstract methods _Base__json_builder, _Base__xml_builder
Grazie in anticipo
Grazie a @AnandSKumar, è strano perché l'ho provato lol. Ho un buon amico – josuebrunel
Sono l'unico, che è incappato nel messaggio di errore? Forse sono solo io, ma mi aspetterei qualcosa in questo modo: _ Non istanziare sottoclassi della classe astratta Base __without__ metodi some-method_. Questo mi ha confuso all'inizio. – quapka
@quapka Penso che il messaggio di errore sembra buono. Il messaggio di errore indica che la classe SubClass ha un "metodo astratto" e non è un metodo concreto, quindi non è possibile creare un'istanza dell'oggetto. –