10
Eleganckie sposoby wspierania równoważności („równości”) w klasach Python
Podczas pisania klas niestandardowych często ważne jest, aby umożliwić równoważność za pomocą operatorów ==i !=. W Pythonie jest to możliwe dzięki zastosowaniu odpowiednio metod specjalnych __eq__i __ne__. Najłatwiejszym sposobem, aby to zrobić, jest następująca metoda: class Foo: def __init__(self, item): self.item = item def __eq__(self, other): if isinstance(other, self.__class__): return …