为了账号安全,请及时绑定邮箱和手机立即绑定

@overrides 模块在 Python 中失败

@overrides 模块在 Python 中失败

慕桂英546537 2023-10-05 16:41:36
按照这个不错的模块,我已经使用了至少一年,没有任何问题,我正在按照文档所说的那样做:安装与pip install overridesBaseSegmenter.pyfrom overrides import EnforceOverridesclass BaseSegmenter(EnforceOverrides):    def __init__(self):        pass    def segment_defects(self):        passDefectSegmenter.pyfrom defect_segmentation import BaseSegmenterfrom overrides import overridesclass AutoencoderSegmenter(BaseSegmenter):    def __init__(self):    @overrides    def segment_defects(self, inspected, warped, warp_mask):        pass这给了我Traceback (most recent call last):  File "C:/noam/autoencoder1/Main.py", line 10, in <module>    from defect_segmentation.DefectSegmenter import AutoencoderSegmenter  File "C:\noam\autoencoder1\defect_segmentation\DefectSegmenter.py", line 5, in <module>    class AutoencoderSegmenter(BaseSegmenter):  File "C:\noam\autoencoder1\defect_segmentation\DefectSegmenter.py", line 9, in AutoencoderSegmenter    @overrides  File "C:\noam\autoencoder1\venv\lib\site-packages\overrides\overrides.py", line 67, in overrides    raise AssertionError('No super class method found for "%s"' % method.__name__)AssertionError: No super class method found for "segment_defects"当执行以下行时会发生这种情况:from defect_segmentation.DefectSegmenter import AutoencoderSegmenter我可能错过了一些基本的东西,但我的眼睛看到超级类确实有segment_defects......
查看完整描述

1 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

问题出在DefectSegmenter.py

from defect_segmentation import BaseSegmenter

而不是正确的

from defect_segmentation.BaseSegmenter import BaseSegmenter

这是一个模块,而不是一个类。这使得模块中的反射失败@overrides


查看完整回答
反对 回复 2023-10-05
  • 1 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信