+14 投票
分类:Python编程与实践 | 用户: (2.6k 分)
a=['a','b','c','d']
b=['c','d','e','f']
for x in a:
if x in b:
a.remove(x)
print (a)

#输出结果为[‘a’, ‘b’ ,’d’]

1个回答

+2 投票
用户: (8.0k 分)

参考我的另一篇回答为什么结果跳过了7? - 爱可可Q&A (aicoco.net),在进行到a中的元素'c'的时候,删除了'c'元素,此时内部循环变量将变为3,然后超过数组a的长度,跳出循环,然后就会跳过元素'd'

另外,建议不要在循环里面直接对循环对象进行修改。

欢迎来到 爱可可Q&A ,有什么问题可以尽管在这里提问,你将会收到其他成员的热心回答。
...