cdxy.me
Footprints on cyber security and Python

source :

www.checkio.org需要翻墙 初学 不定期更新此类题目

描述:

你将得到一个含有整数(X)的非空列表。在这个任务里,你应该返回在此列表中的非唯一元素的列表。要做到这一点,你需要删除所有独特的元素(这是包含在一个给定的列表只有一次的元素)。解决这个任务时,不能改变列表的顺序。例如:[1,2,3,1,3] 1和3是非唯一元素,结果将是 [1, 3, 1, 3]。

输入: 一个含有整数的列表。

输出: 一个含有不唯一元素的整数列表。

范例:

checkio([1, 2, 3, 1, 3]) == [1, 3, 1, 3]
checkio([1, 2, 3, 4, 5]) == []
checkio([5, 5, 5, 5, 5]) == [5, 5, 5, 5, 5]
checkio([10, 9, 10, 10, 9, 8]) == [10, 9, 10, 10, 9]
1
2
3
4

如何使用: 这个任务将帮助您了解如何操作数组,这是解决更复杂的任务的基础。这个概念可以很容易地推广到真实世界的任务。例如你需要通过删除低频的元素(噪声)来使统计数据更清楚。

前提:
0 < |X| < 1000

 

ans1:

 

checkio=lambda d:[x for x in d if d.count(x)>1]

 

ans2:

 

def checkio(data):
        return [i for i in data if data.count(i) > 1]

 

ans3:

 

def checkio(data):
    return [x for x in data if data.count(x) > 1]

 

 

答案解析:

平台前三答案基本相同,[]里的为list构建式

list.count()   This method returns count of how many times obj occurs in list.

该语句表示:遍历list的元素,将出现次数大于1的元素取出,放到新的list中