我有一个执行以下任务的 python 脚本。 它执行 for 循环遍历数组项并提供属于该项的相关信息。
我想实时更新数组,并且必须在不重置的情况下执行 for 循环。一些 ML 训练发生在 for 循环内,因此在数组更新时不应重新启动它。同时for循环必须能够检测到数组中的附加项。
'''
arr = [a,b,c]
for i in arr:
print(i) #and do something
现在基本上 arr 将通过侦听 DB 列来附加。例如,我做
arr.append(dbData)
我知道我可以使用该函数再次调用 for 循环,但是如何在不重置循环的情况下执行此操作?
感谢您的帮助。如果问题不清楚,请告诉我。
答案 0 :(得分:0)
另见here
您在列表上创建一个迭代器并根据需要添加到它
arr = [a,b,c]
for i in arr:
print(i)
islice(arr,0,len(arr)-1)
查看此 tutorial 以获得有关如何使用 islice 方法的良好介绍
答案 1 :(得分:0)
我不太确定 islice 迭代器。下面的代码给了我正确的输出。
myarr = [1,2,3]
bb = []
while True:
for a in myarr:
if len(myarr)==3: #some condition
bb.append(4)
myarr.extend(bb)
print(a, myarr)
谢谢