python中怎么释放内存?

请问,遍历列表l的时候,i=0的时候,产生物理内存和页面设置,i=1的时候也产生
假如列表l 非常大的时候,运行时,内存占用 非常多,直至软件崩溃
请问,怎么解决这个问题?
是否可以 在 i=0的时候,完成了判断,然后写一些代码清除内存,然后i=1的时候,判断完,清楚内存?

img

l=[2,3,158,95,49,45,95,498,31,18,48,18]
for i in range(len(l)):
    if l[i] >5:
        print(l[i])

可以用迭代器iter,示例如下:

l=[2,3,158,95,49,45,95,498,31,18,48,18]
for i in iter(l):
    if i >5:
        print(i)

列表有多大?一百万?我以前遍历过这么大的列表没任何影响,你确定内存占用是因为这个?