8.3. Operator Membership

  • in

  • not in

8.3.1. SetUp

>>> from dataclasses import dataclass

8.3.2. Example

  • item in obj -> obj.__contains__(item)

>>> @dataclass
... class Vector:
...     x: int
...     y: int
...
...     def __contains__(self, item): ...  # item in obj

# Use Case - 1

0 in [1, 2, 3] # False

class list:
def __contains__(self, item):
for element in self.values:
if element == item:

return True

return False

# Use Case - 2

'x' in 'Python' # False

class str:
def __contains__(self, item):
for letter in self.value:
if letter == item:

return True

return False