Non-unique Elements
You are given a non-empty list of integers (X). For this task, you should return a list consisting of only the non-unique elements in this list. To do so you will need to remove all unique elements (elements which are contained in a given list only once). When solving this task, do not change the order of the list. Example: [1, 2, 3, 1, 3] 1 and 3 non-unique elements and result will be [1, 3, 1, 3].
题目大义:将数组中唯一的元素清除
还是C语言的思想,直接粗暴,首先是遍历求出唯一的元素,再使用数组的remove方法
1 def checkio(data):
2
3 only = []
4
5 for each in data:
6 count = 0
7 for other in data:
8 if each == other:
9 count += 1
10
11 if count == 1:
12 only.append(each)
13
14 for each in only:
15 data.remove(each)
16
17 return data
当然我们有更高级的方法list = [x for x in data if x.count > 1],简单明了,使用了数组的另一种构造方法,使用了数组count方法
1 def checkio(data):
2 list = [x for x in data if data.count(x) > 1]
3 return list
新技能get