我有一个list l=['abc','abcdef','def','defdef','polopolo']
即时消息试图删除其超字符串已经在列表中的字符串。在这种情况下,结果应该是:python从字符串列表中删除子字符串
['abcdef','defdef','polopolo']
我写的代码:
l=['abc','abcdef','def','defdef','polopolo']
res=['abc','abcdef','def','defdef','polopolo']
for each in l:
l1=[x for x in l if x!=each]
for other in l1:
if each in other:
res.remove(each)
,但它似乎没有工作。我读过,我们无法从列表中删除,而迭代它。因此,复制res。,而l是我的原始列表。 在此先感谢。
如果你在'res.remove(each)'后立即跳出循环,你的代码就可以工作了:)为了一个有效的方法来做到这一点,请检查我的答案:) – thefourtheye
我现在非常愚蠢的错误在你解释它。 :)谢谢 – user2058724
不客气;) – thefourtheye