这个有几种方法来完成,但是对于不可哈希的数据来说,BIF set() 是无效的,会报错,下面介绍几种方法
对于以上4种方法,各有利弊,一般来说是方法2最快,方法1和方法3比较类似,但是方法3可以保持列表中的排序和之前的一样,但是开头也说了,这样无法对不可哈希的对象进行去重复,比如列表中的元素还是列表,这种情况下就只能用方法4了,但是方法4的缺点就是比较的慢。
字典也是大括号{},但是跟集合还是有区别。
1.集合没有重复的元素,列表可以有重复元素
集合会自动将重复的字符给删掉,而列表会原样输出显示
2.集合中的元素与顺序无关,而列表中的元素与顺序有关
1.集合{}没有重复的元素
2.集合{}中的元素跟顺序无关
3.将列表[],元组() 转换成集合后,重复的元素会自从删掉,然后将集合转成列表[] 元组()
加油-2020-0220
输出列表元素重复个数def get_element(data):
dic = {}
i = 0
while i <len(data):
if data[i] in dic:
"""
循环查找列表元素,如果一个元素出现一次,value就等于1,多次出现,value就增加
"""
dic[data[i]] += 1
else:
dic[data[i]] = 1
i += 1
for j, k in dic.items():
if k >1:
print('data数组中重复的元素有%d,它的个数是%d个'%(j,k))
print(dic)
my_list =[1,2,3,4,2,4,2,3,4,5,6,23,23,32]
get_element(my_list)