我有一个用python创建的类,具有以下结构。
class Bayes():
def __init__(self,k=1):
...
def train(self,X,y):
...
def classify_prob(self,ejemplo):
...
def classify(self,ejemplo):
...
现在,我需要生成一个给我一个异常的类(加薪)。如果我在调用train方法之前先调用classify或classify_prob方法,则会出现此异常。
该类必须具有以下结构:
class ClassifyNoTrain(Exception): pass
我该如何上课?谢谢
答案 0 :(得分:1)
我不确定您是否完全了解您的问题,但是那又如何呢?
class ClassifyNoTrain(Exception):
pass
class Bayes():
def __init__(self,k=1):
self.train_ok = False
def train(self,X,y):
self.train_ok = True
def classify_prob(self, ejemplo):
if not self.train_ok:
raise ClassifyNoTrain()
def classify(self, ejemplo):
if not self.train_ok:
raise ClassifyNoTrain()
b = Bayes()
b.train('X', 'y') # comment this to raise the exception
b.classify('ejemplo')