问题描述:
有2个数组如下
a = [3,3,3,4,4,4,5,6,7]
b = [3,3,4,4]
第1题:从数组a中删除所有在数组b中出现过的元素。对于上例来说,a删除结束应该等于 [5, 6, 7].
第2题:实现 c = a – b , c应该等于[3, 4, 5, 6, 7].
先看第1题:
常规的思维大致会这么写代码:
for i in a:
if i in b:
a.remove(i)
这么写是错误的,如果在for循环外面加一句打印语句,则会发现a变成了一个奇怪的数组: [3, 4, 4, 5, 6, 7]
删倒也删了几个,但是又没有删除干净。(原因后面会讲)
那
- 1
- 2
- 3
前往页