Improving things for runtime and adding abstractmethod
.
#3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi @PartTimeLegend, this is a synopsis of what I changed,
Added
from abc import ABC
andabstractmethod
.This imports the necessary tools from Python's Abstract Base Class (ABC) module.
Changed class
RadioDetector
to classRadioDetector(ABC)
.Thus by inheriting from ABC, we explicitly declare this as an abstract base class.
This makes the intention clearer and provides better support for abstract methods.
Replaced raise
NotImplementedError(...)
with@abstractmethod
decorator.The
@abstractmethod
decorator is more idiomatic in Python for defining abstract methods. It prevents instantiation of any subclass that doesn't implement these methods, which is more robust than raising an error at runtime.Cheers,
Michael Mendy.