python for 循环中的进程变慢,即使在重置列表时也是如此

process in python for loop slows down, even when resetting the list

嗨,这可能是一个愚蠢的问题...

但是我在 for 循环中的进程变慢了,它达到了第 40,000 个循环
例如

lst = []
for i in range(100000):

    result = do something with my code
    lst.append(result)

    if len(lst) == 5000:
         "save list as pickle then reset"
         lst = []

这是因为 python 在 for 循环中节省了内存存储(?)?所以列表的大小无关紧要?

您可能需要在 lst = [] 之后调用 gc.collect(),以便垃圾收集器从最后 5000 个项目中释放内存。

垃圾收集器(通常)很难预测,因此脚本很可能在重新分配引用后没有释放内存。