类变量,实例变量

时间:2021-06-22 05:43:08
 

 

 1 class a():
2 name="11"#类变量
3 global name1#类中的全局变量
4 name1 = "22"
5 def __init__(self):
6 print self.name #实例可以访问类变量
7 self.name = "33"
8 def do(self):
9 print self.name
10 print a.name
11 print name1
12 #print name #报错,全局变量name
13 #未定义,name没有被global修饰,
14 #是类变量,而非全局变量,而在主程序
15 #中定义的变量,无需加global就是全局
16 #变量
17 aa =a()
18 aa.do()#打印33,11,22
19 a.name2="33"#类变量在类定义好后仍然能动态添加
20 #
21 print dir(a)#列出所有类变量和方法,不包括
22 #实例变量
23 print dir(aa)#列出所有类变量,实例变量和方法
24 29 c = 1#无需加global就是全局变量,可以
25 #直接被主程序中的方法使用
26 d = 1
27 def b():
28 print c#这不是定义,而是使用
29 d = 2#在函数中定义的变量都是局部变量
30 #作用范围仅仅是函数内部
31 b()
32 print (c,d)#打印(1,1)