我想使用for循环更新列表,我知道它不起作用,但我不确定什么是最好的方式来做到这一点。使用列表理解来更新for循环中的列表
l = ['axy','axy','bxy','cxy']
for i in l:
item = 'ax'
l = [s for s in l if not s.startswith(item)]
print l
输出:
['bxy', 'cxy']
['bxy', 'cxy']
['bxy', 'cxy']
['bxy', 'cxy']
预期输出:
['bxy', 'cxy']
['bxy', 'cxy']
['bxy', 'cxy']
#1 less loop as the list should've been updated to l = ['bxy','cxy'] after the first loop
它告诉我,该名单得到更新,但迭代没有,反正是有,我可以在使用列表理解循环?
我用这来删除文件,因此当文件被删除,我需要更新的列表,以便它不会再次提示。
删除最后一个'打印l' –
嗨编辑我的代码输出,更清楚地表明我现在想要的。 – BernardL