Сагура Николай, 392, сев. филиал ParDescr 7677
Лукьянов Артём Васильевич, 317, Севастопольский филилал ParDescr 8511
t1class ParDescr:t1class ParDescr:
22
3    def __init__(self, default):3    def __init__(self, default):
4        self.default = default4        self.default = default
55
6    def __set_name__(self, owner, name):6    def __set_name__(self, owner, name):
7        self.name = name7        self.name = name
88
9    def __get__(self, instance, owner):9    def __get__(self, instance, owner):
10        if instance is None:10        if instance is None:
11            return self.default11            return self.default
12        return instance.__dict__.get(self.name, self.default)12        return instance.__dict__.get(self.name, self.default)
1313
14    def __set__(self, instance, value):14    def __set__(self, instance, value):
15        instance.__dict__[self.name] = value15        instance.__dict__[self.name] = value
1616
17    def __delete__(self, instance):17    def __delete__(self, instance):
18        if self.name not in instance.__dict__:18        if self.name not in instance.__dict__:
19            raise KeyError(self.name)19            raise KeyError(self.name)
20        del instance.__dict__[self.name]20        del instance.__dict__[self.name]
21'\nclass C:\n    a = ParDescr(100500)\n    b = ParDescr(42)\n\nprint(C.a21'\nclass C:\n    a = ParDescr(100500)\n    b = ParDescr(42)\n\nprint(C.a
>, C.b)\nc, d = C(), C()\nprint(c.a, c.b, d.a, d.b)\nc.a, d.b = "QQ", "QK>, C.b)\nc, d = C(), C()\nprint(c.a, c.b, d.a, d.b)\nc.a, d.b = "QQ", "QK
>RQ"\nprint(c.a, c.b, d.a, d.b)\ndel c.a\nprint(c.a, c.b, d.a, d.b)\n'>RQ"\nprint(c.a, c.b, d.a, d.b)\ndel c.a\nprint(c.a, c.b, d.a, d.b)\n'
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op