Odpowiedzi:
Pełniejsza odpowiedź to:
class MyClass(object):
def __init__(self):
self.numbers = [1,2,3,4,54]
def __contains__(self, key):
return key in self.numbers
Tutaj uzyskasz wartość Prawda, gdy zapytasz, czy 54 było wm:
>>> m = MyClass()
>>> 54 in m
True
Możesz także rzucić okiem na strukturę zastępowania operatora infix, której mogłem użyć do stworzenia języka specyficznego dla domeny:
is
iis not
. Jak aquery = tinydb.Query().field == value
, także móc pisaćQuery().field is not None
. Ale wydaje mi pozostało__eq__
i__ne__
na razie, co prowadzi do unpythonicQuery().field != None
. (sarc)