Abstract class attributes
Abstract class attributes for ABCs.
import abc from abcattrs import abstractattrs, Abstract @abstractattrs class A(abc.ABC): foo: Abstract[int] # Abstract subclasses can add more required attributes @abstractattrs class B(A, abc.ABC): bar: Abstract[str] class C(B): # C must define both of these attributes to not raise an error foo = 1 bar = "str"
Abstract qualifier can be combined with other PEP 593 annotations.
from typing import Annotated import abc from abcattrs import abstractattrs, Abstract @abstractattrs class A(abc.ABC): # Combine with other annotations bar: Annotated[str, Abstract, "other info"]
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
abcattrs-0.4.0.tar.gz (5.2 kB view hashes)