lnlidawei

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

 python3:类变量和类的成员变量:

 

 

 

 

一、说明

 

  1、类变量:  在类的内部、函数的外部,定义的变量。

 

  2、类的成员变量:  在类的内部、函数的内部,以“self.name=value”形式定义的变量。

 

  3、局部变量:  在类的内部、函数的内部,以“variable_name=value”形式定义的变量。

 

 

 

 

二、示例代码和运行结果

 

 1 [root@rocky python]# date
 2 Wed Feb 22 06:36:49 AM CST 2023
 3 [root@rocky python]# 
 4 [root@rocky python]# 
 5 [root@rocky python]# python3  -V
 6 Python 3.9.14
 7 [root@rocky python]# 
 8 [root@rocky python]# 
 9 [root@rocky python]# uname  -a
10 Linux rocky 5.14.0-162.12.1.el9_1.0.2.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Jan 30 22:14:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
11 [root@rocky python]# 
12 [root@rocky python]# 
13 [root@rocky python]# cat  py3_class.py 
14 #!/usr/bin/python3
15 
16 
17 
18 
19 class BIG:
20 
21     # 类变量:    gm_var,  gloabl_name
22     gm_var=""
23     global_var=""
24 
25     def init(self, gm, member):
26         #成员变量/实例变量:    gm_var,  member_var
27         self.gm_var = gm
28         self.member_var = member
29 
30     def msg(self):
31         #局部变量/普通变量:    local_var
32         print("\tmsg:member:  gm_var=" + self.gm_var)
33         local_var = "\tmsg:member:  member_var="
34         print(local_var + self.member_var)
35         print("")
36 
37     def global_msg(self):
38         #类变量的调用: gm_var,  global_var
39         print("\tglobal_msg:global:  gm_var=" + BIG.gm_var )
40         print("\tglobal_msg:global:  global_var=" + BIG.global_var )
41         print("")
42 
43 
44 
45 
46 if __name__ == "__main__":
47     # 创建“类”的对象
48     b = BIG()
49     # 类变量的初始化
50     BIG.global_var="global:global_variable"
51     BIG.gm_var="global:gm_var"
52     # 类的成员变量初始化:  gm_var,  member_var
53     b.init("member:gm_var","member:member_var")
54     b.msg()
55     b.global_msg()
56     b.msg()
57     b.global_msg()
58 [root@rocky python]# 
59 [root@rocky python]# 
60 [root@rocky python]# ./py3_class.py 
61         msg:member:  gm_var=member:gm_var
62         msg:member:  member_var=member:member_var
63 
64         global_msg:global:  gm_var=global:gm_var
65         global_msg:global:  global_var=global:global_variable
66 
67         msg:member:  gm_var=member:gm_var
68         msg:member:  member_var=member:member_var
69 
70         global_msg:global:  gm_var=global:gm_var
71         global_msg:global:  global_var=global:global_variable
72 
73 [root@rocky python]# 
74 [root@rocky python]# 

 

 

 

 

 

 

三、参考资料

 

  1、python3之类变量与实例变量的详解:  https://blog.csdn.net/tju_haitang/article/details/120287472

 

  2、Python的类变量、实例变量:  https://blog.csdn.net/mahoon411/article/details/125679437

 

posted on 2022-05-20 03:09  lnlidawei  阅读(622)  评论(0编辑  收藏  举报