[英]The global variable from a function() within a different .py file isnt being found within Python script?
[英]Set a variable from a class within a different file
我有2个文件:
fileA.py
和
fileB.py
我想设置(改变)从一个变量fileA
从内部功能fileB
。 我要更改的变量在类的内部(我相信该变量是Class变量)。 我试图导入fileA
的内部fileB
但是有错误。
# fileA:
...
class SomeDialog(QDialog):
my_var = 0
...
# fileB:
...
from fileA import SomeDialog as sd
def my_func():
sd.my_var = 5
...
有什么帮助吗?
根据收到的错误,您可能在某处进行了循环导入。 它与您要对课程进行的操作无关。
有关更多详细信息,请参见ImportError:无法导入名称X。
如果是这种情况,解决此问题的唯一方法是更改文件结构。
您的课程应如下所示:
class SomeDialog(QDialog):
def __init__(self):
self.my_var = 0
然后,您可以像这样访问my_var
:
SomeDialog.my_var
类变量是在类内定义的,但是在任何类的方法之外。 不使用类变量。 在所有类实例中,类变量具有相同的值
A.py
from B import SomeDialog as sd
def my_func():
print sd.my_var
sd.my_var = 5
return sd
_my_func = my_func()
print _my_func.my_var
B.py
class SomeDialog(object):
my_var = 0
#output
0
5
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.