从不同python文件中的另一个类导入全局列表
我正在尝试从另一个python文件读取列表值。但我总是得到一张空名单 A.py文件从不同python文件中的另一个类导入全局列表,python,python-2.7,python-requests,Python,Python 2.7,Python Requests,我正在尝试从另一个python文件读取列表值。但我总是得到一张空名单 A.py文件 import time class A(): info = [] def add_values(self): x = 10 while True: for i in range(x): self.info.append(i) i = x x = x + 10 time.
import time
class A():
info = []
def add_values(self):
x = 10
while True:
for i in range(x):
self.info.append(i)
i = x
x = x + 10
time.sleep(3)
if len(info)> 1000:
return
print self.info
def getinfo():
return self.info
B.py文件
from A import A
Class B()
def useinfo():
print A.getinfo()
info当前是python对象上的一个实例变量,对它的更改应该发生在实例上。更改add_项以更新静态上下文中的变量。将其更改为@classmethod
class A():
info = []
@classmethod
def add_values(cls):
x = 10
while True:
for i in range(x):
cls.info.append(i)
i = x
x = x + 10
time.sleep(3)
if len(info)> 1000:
return
print(cls.info)
但看起来您可能需要创建类A的实例
instance_of_a = A()
instance_of_a.add_values()
print(instance_of_a.info)
如果您确实想将其用作实例变量而不是静态变量,我会将add_values更改为\uuu init\uuuu(self)
或构造函数,以便您可以这样做
instance_of_a = A()
print(instance_of_a.info)
在何处创建类A的实例并调用实例
A()。add_values()
方法?不在这段代码中-那么为什么您会认为它是非空的呢?除此之外:A.info!=A().info
除此之外:类B()
是无效的python(缺少:和大写字母B),导入时间
缺少,len(info)
未定义(缺少self.)等。请理解您谈论的每一件事我试图使用类似get()的东西:返回self.info,但我得到了空列表你好,帕特里克,我不知道你是怎么决定用否定的分数来评价我的问题的。我只是添加了我的问题,你很生气,并且在口试中和我说话。你没有给我几秒钟的时间来修改我的代码,或者你至少没有给自己足够的时间来理解我需要从我的问题你来这里寻求帮助。我指出了代码中的几个错误,这些错误都需要修复才能得到一个空列表。再次澄清:如果您在任何地方调用def add_values(self):
,就会出现一个名称错误,阻止您执行代码。如果启动B.py文件,则会出现另外两个错误,因为**C
**lass而不是class
,并且因为缺少:
。因此,本质上,您需要代码方面的帮助,而这些代码甚至没有实现您声称的功能:为您提供[]。在我看来,这值得投反对票。因此,它是一个和dv可能消失,甚至收集选票。