[Python-Dev] Second post: PEP 557, Data Classes
Greg Ewing
greg.ewing at canterbury.ac.nz
Mon Nov 27 00:04:45 EST 2017
Nick Coghlan wrote:
> Perhaps the check could be:
>
> (type(lhs) == type(rhs) or fields(lhs) == fields(rhs)) and all
> (individual fields match)
I think the types should *always* have to match, or at least
one should be a subclass of the other. Consider:
@dataclass
class Point3d:
x: float
y: float
z: float
@dataclass
class Vector3d:
x: float
y: float
z: float
Points and vectors are different things, and they should never
compare equal, even if they have the same field names and values.
--
Greg
More information about the Python-Dev
mailing list