Item
如何获取列表中同一元素出现次数为奇数的该元素
Contents
给定一个列表,列表中某一元素出现的次数为奇数时,请返回该元素的数值,元素的类型均为整数 举例:这个列表为[1,2,3,3,1,5,5,3],那么应返回3 题目来源:codewarn(6Ku)
Knowledge
- 数据类型:整数(int)
- 运算符:比较运算符、赋值运算符、成员运算符
- 容器:列表(List)、字典(Dict)
- 其他:for循环体、字典的遍历等
Me
- 定义函数find_it(seq),seq为源列表;
- 简要思路:建立字典同时利用get()方法获取重复元素的个数;
- 之后就在字典和列表中进行操作,简单的进行遍历。
Code
此处稍作修改,CodeWarn上的只做简单处理,有时候遇到多个不同的重复奇数目的元素只会优先输出第一个,如[1,2,2,2],仅仅会输出1,此处直接输出为新的列表re,即达到题目要求的全部输出,如需输出字符串,另行For循环解决。
def find_it(seq):
dict, re = {},list()
for k in seq:
dict[k]=dict.get(k,0)+1
[re.append(key) for key,value in dict.items() if value%2 != 0]
return re
|