@@ -823,6 +823,21 @@ <h3 id="multipleinheritance">Multiple Inheritance</h3>
823
823
< pre > < code class ="python language-python hljs "> < span class ="hljs-meta "> >>> </ span > C.mro()
824
824
[<< span class ="hljs-class "> < span class ="hljs-title "> class</ span > '< span class ="hljs-title "> C</ span > '>, << span class ="hljs-title "> class</ span > '< span class ="hljs-title "> A</ span > '>, << span class ="hljs-title "> class</ span > '< span class ="hljs-title "> B</ span > '>, << span class ="hljs-title "> class</ span > '< span class ="hljs-title "> object</ span > '>]
825
825
</ span > </ code > </ pre >
826
+ < h3 id ="property "> Property</ h3 >
827
+ < pre > < code class ="python language-python hljs "> < span class ="hljs-class "> < span class ="hljs-keyword "> class</ span > < span class ="hljs-title "> MyClass</ span > :</ span >
828
+ < span class ="hljs-meta "> @property</ span >
829
+ < span class ="hljs-function "> < span class ="hljs-keyword "> def</ span > < span class ="hljs-title "> a</ span > < span class ="hljs-params "> (self)</ span > :</ span >
830
+ < span class ="hljs-keyword "> return</ span > self._a
831
+
832
+ < span class ="hljs-meta "> @a.setter</ span >
833
+ < span class ="hljs-function "> < span class ="hljs-keyword "> def</ span > < span class ="hljs-title "> a</ span > < span class ="hljs-params "> (self, value)</ span > :</ span >
834
+ self._a = value
835
+ </ code > </ pre >
836
+ < pre > < code class ="python language-python hljs "> < span class ="hljs-meta "> >>> </ span > el = MyClass()
837
+ < span class ="hljs-meta "> >>> </ span > el.a = < span class ="hljs-number "> 123</ span >
838
+ < span class ="hljs-meta "> >>> </ span > el.a
839
+ < span class ="hljs-number "> 123</ span >
840
+ </ code > </ pre >
826
841
< h3 id ="dataclass "> Dataclass</ h3 >
827
842
< p > < strong > Decorator that automatically generates init(), repr() and eq() special methods.</ strong > </ p >
828
843
< pre > < code class ="python language-python hljs "> < span class ="hljs-keyword "> from</ span > dataclasses < span class ="hljs-keyword "> import</ span > dataclass, field
@@ -867,10 +882,10 @@ <h3 id="hashable">Hashable</h3>
867
882
</ ul >
868
883
< pre > < code class ="python language-python hljs "> < span class ="hljs-class "> < span class ="hljs-keyword "> class</ span > < span class ="hljs-title "> MyHashable</ span > :</ span >
869
884
< span class ="hljs-function "> < span class ="hljs-keyword "> def</ span > < span class ="hljs-title "> __init__</ span > < span class ="hljs-params "> (self, a)</ span > :</ span >
870
- self.__a = copy.deepcopy(a)
885
+ self._a = copy.deepcopy(a)
871
886
< span class ="hljs-meta "> @property</ span >
872
887
< span class ="hljs-function "> < span class ="hljs-keyword "> def</ span > < span class ="hljs-title "> a</ span > < span class ="hljs-params "> (self)</ span > :</ span >
873
- < span class ="hljs-keyword "> return</ span > self.__a
888
+ < span class ="hljs-keyword "> return</ span > self._a
874
889
< span class ="hljs-function "> < span class ="hljs-keyword "> def</ span > < span class ="hljs-title "> __eq__</ span > < span class ="hljs-params "> (self, other)</ span > :</ span >
875
890
< span class ="hljs-keyword "> if</ span > isinstance(other, type(self)):
876
891
< span class ="hljs-keyword "> return</ span > self.a == other.a
0 commit comments