gpt4 book ai didi

python - 我想更新我在 while 循环中使用的列表,而循环仍在运行。有没有办法做到这一点?

转载 作者:行者123 更新时间:2023-11-28 16:58:29 25 4
gpt4 key购买 nike

我有一个使用 while 循环的函数,理想情况下我想设置它然后在后台运行。在这个 while 循环中,我使用了一个列表。我想做的是,如果我想到要放入此列表的其他内容,我可以简单地编辑列表,然后在下次循环开始时使用更新后的列表。目前,我似乎找不到执行此操作的方法。

我尝试在单独的程序中定义列表,然后在每个循环开始时导入它。然后我在单独的程序中更新了列表,但这并没有反射(reflect)在输出中。

import time
while True:
from list_test import sample_list
print(sample_list)
time.sleep(30)

当我更新 sample_list 时,输出没有改变。有人知道为什么吗?很抱歉,如果解决方案很简单,我对一般的编程还很陌生!

最佳答案

如评论中所述,通常不建议更新您正在迭代的列表(即使您只是在示例中打印它)。也就是说你可以使用 importlibreload方法。例如像这样:

import time
import importlib

list_module = importlib.import_module("list_test")
sample_list = list_module.sample_list
while True:
sample_list = importlib.reload(list_module).sample_list
print(sample_list)
time.sleep(5)

请注意,您必须手动更新列表才能看到更改。在运行时用另一个程序更新列表将不起作用。

关于python - 我想更新我在 while 循环中使用的列表,而循环仍在运行。有没有办法做到这一点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56037535/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com