在python中,如何在不中断无限循环的情况下从无限循环返回数据?

在python中,如何在不中断无限循环的情况下从无限循环返回数据?,python,Python,目的:我想读取无限循环[class A]的内容,收集数据,并将其发送给另一个class B/函数进行进一步处理 问题:可以显示A类内容。但是,将A的内容调用到类B/函数中会显示空列表 有两个文件:test3.py和test4.py。调用和执行在test4.py中完成 它应该会起作用,但不会:寻求建议,有什么不对谢谢 # Test4.py import test3 import time objectTest = test3.test1() def interface(): A = obje

目的:我想读取无限循环[class A]的内容,收集数据,并将其发送给另一个class B/函数进行进一步处理

问题:可以显示A类内容。但是,将A的内容调用到类B/函数中会显示空列表

有两个文件:test3.pytest4.py。调用和执行在test4.py中完成

它应该会起作用,但不会:寻求建议,有什么不对谢谢

# Test4.py
import test3
import time
objectTest = test3.test1()
def interface():
   A = objectTest.collectData() #call collectData from tset3
   B = (objectTest.name)        #call Instance attribute from test3
   print(B)                     #for testing purpose
   print(A)                     #for testing purpose
   while True:
       interface()
       time.sleep(1)

# Test3.py
import random
import time

class test1:
    def __init__(self):
        self.name=[]

    def collectData(self):
        temp=[]
        #temp = list(self.name)  # for testing purpose
        enter code heretemp = self.name.copy()
        print(temp)             # for testing purpose
        return temp

    def engine(self):
        while True:
            self.name.append(random.randrange(1,20))
            self.collectData()
            self.name.clear()
            time.sleep(2)

if __name__ == '__main__':
    object1 = test1()
    object1.engine()

请更具体地说明哪些不符合预期。粘贴您的(示例)代码已经是确保其他人可以帮助您的好方法!我不确定你面临什么问题。(您看到了什么错误消息?您期望/看到的确切输出是什么?)阅读有关Hey basti的文章,我有一个处理过程正在经历一个无限的while循环。数据需要从无限循环发送到另一个程序进行进一步处理。显然,我们不能在无限循环中使用“return”。正如Stovfl所建议的,可以使用发电机,但仍在寻找更好的方法。希望我能说清楚。@eva:“怎么了?”:
语法错误:无效语法
输入code heretemp=self.name.copy()
。您的问题并更正它。@stovfl:执行test4.py(调用test3.py),无法显示属性值。它显示为空(列表)。是的,生成器是一种方式,使用队列是另一种方式。我计划在多线程处理中使用队列。谢谢