在实际应用中,某工程想要共享某一变量的值,需要所有py文件获得的变量都是一致的
可以通过类变量来实现。
代码如下:
class test:
x = ""
def __init__(self):
self.y = ""
def setdir(self,valuex,valuey):
test.x=valuex#更改类变量的值,通过【类名.变量名=变量值】来更改
self.y=valuey#更改实例变量的值,通过【self.变量名=变量值】来更改
def getvalue(self):
print(test.x,self.y)
if __name__=="__main__":
a=test()
b=test()
a.setdir(1,1)
b.setdir(2,2)
a.getvalue()
b.getvalue()#类变量的值是同一个,实例变量的值一个实例一个
x = ""
def __init__(self):
self.y = ""
def setdir(self,valuex,valuey):
test.x=valuex#更改类变量的值,通过【类名.变量名=变量值】来更改
self.y=valuey#更改实例变量的值,通过【self.变量名=变量值】来更改
def getvalue(self):
print(test.x,self.y)
if __name__=="__main__":
a=test()
b=test()
a.setdir(1,1)
b.setdir(2,2)
a.getvalue()
b.getvalue()#类变量的值是同一个,实例变量的值一个实例一个
运行结果为:
2 1
2 2
类变量和实例变量的区别:
类变量的值是同一个,更改类变量的值,所有人调用类变量的值都会变
实例变量的值每个实例互不相关,每个实例单独存储实例变量