微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何更新数组和for循环而不必重新启动程序?

如何解决如何更新数组和for循环而不必重新启动程序?

我有一个执行以下任务的 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 循环,但是如何在不重置循环的情况下执行此操作?

感谢您的帮助。如果问题不清楚,请告诉我。

解决方法

另见here

您在列表上创建一个迭代器并根据需要添加到它

arr = [a,b,c]
for i in arr:
    print(i) 

islice(arr,len(arr)-1)

查看此 tutorial 以获得有关如何使用 islice 方法的良好介绍

,

我不太确定 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)

谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。