用户工具

站点工具


linux:python:使用class变量

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
linux:python:使用class变量 [2020/09/12 18:29] zhangguolinux:python:使用class变量 [2023/03/17 10:12] (当前版本) – 外部编辑 127.0.0.1
行 10: 行 10:
  
   - class b在class a实例化时进行赋值,之后class a一直以classmethod的方式使用。   - class b在class a实例化时进行赋值,之后class a一直以classmethod的方式使用。
-  - class b的实例化在class a的一个classmethod方法中完成,class a的方法总是以classmethod的方式进行使用。在使用的角度上来看,或许此种方式看起来舒服一些。+  - class b的实例化在class a的一个classmethod方法中完成,class a的方法总是以classmethod的方式进行使用。<color #ed1c24>在使用的角度上来看,或许此种方式看起来舒服一些。</color>
  
 <code python> <code python>
行 16: 行 16:
     def __init__(self, name):     def __init__(self, name):
         self.name = name         self.name = name
-    def print(self):+    def myprint(self):
         print(f'haha, b.name = {self.name}')         print(f'haha, b.name = {self.name}')
  
行 30: 行 30:
                  
     @classmethod     @classmethod
-    def print(cls): +    def myprint(cls): 
-        a.b_inst.print()+        a.b_inst.myprint()
                  
                  
 if __name__ == '__main__': if __name__ == '__main__':
     a_inst = a('name_b0'  #此处实例化, 仅仅只是为了给a的类变量赋值     a_inst = a('name_b0'  #此处实例化, 仅仅只是为了给a的类变量赋值
-    a.print()       # 调用class a的classmethod, 方法里有使用到class a的类变量。+    a.myprint()       # 调用class a的classmethod, 方法里有使用到class a的类变量。
          
     # or      # or 
     a.set_name('name_b1') # 可以不用把a实例化     a.set_name('name_b1') # 可以不用把a实例化
-    a.print()       # 调用class a的classmethod, 方法里有使用到class a的类变量。+    a.myprint()       # 调用class a的classmethod, 方法里有使用到class a的类变量。
 </code> </code>
  
linux/python/使用class变量.1599906596.txt.gz · 最后更改: 2023/03/17 10:12 (外部编辑)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki