Python 3 Deep Dive Part 4 Oop High Quality 〈Safe ›〉
@radius.setter def radius(self, value): if value < 0: raise ValueError("Radius cannot be negative") self._radius = value
class Foo: def __init__(self): self.__secret = 42 def get_secret(self): return self.__secret f = Foo() print(f._Foo__secret) # 42 – still accessible, but harder to accidentally access python 3 deep dive part 4 oop high quality
class BadCircle: def __init__(self, radius): self._radius = radius def get_radius(self): return self._radius def set_radius(self, value): if value < 0: raise ValueError("Radius cannot be negative") self._radius = value : @radius
:
:
Follow for more Python 3 deep dives.
from collections.abc import Sized class MyContainer: def (self): return 10 @radius.setter def radius(self