Hi, If I run this code: class Property:
def __init__(self, var: int): self.a: int = var @property def a(self): return self.__a @a.setter def a(self, var: int): if var > 0 and var % 2 == 0: self.__a = var else: self.__a = 2 if __name__ == '__main__': x = Property(1.5) print(x.a) I am getting 2. How come, if I have created a class with :int in order to ensure that "a" property must be an integer, that I can create an instance with float (1.5)? Regards. -- https://mail.python.org/mailman/listinfo/python-list