python之數組元素去重


list = [1,2,13,1,31,21,13,1,3,13,1,31,211,1] # 具有重復元素的數組
list1= [] #創建一個新的數組來存儲無重復元素的數組
for element in list :
  if(element not in list1):
    list1.append(element)

print list1

 

元素出現次數  https://www.cnblogs.com/kaibindirver/p/9866450.html

 

出重更好的方法 https://blog.csdn.net/weixin_44520259/article/details/89764254

 

一、用set方法去重后與原列表長度比較
lst=[1,3,5,3,4,4,2,9,6,7]
set_lst=set(lst)
#set會生成一個元素無序且不重復的可迭代對象,也就是我們常說的去重
if len(set_lst)==len(lst):
print('列表里的元素互不重復!')
else:
print('列表里有重復的元素!')
二、用append的方式把原列表中的元素添加到一個新列表,確保新列表里不存在重復的元素,然后比較兩個列表
lst=[1,3,5,8,9,9,0,0,3,3]
new_list=[]

for i in lst:
if i not in new_list:
new_list.append(i)
#這樣能確保新的列表里包含原列表里所有種類的元素,且元素互不重復

if len(new_list)==len(lst):
print('原列表里的元素互不重復!')
else:
print('原列表里有重復的元素!')
三、用fromkeys的方法創建一個字典,因為字典的鍵會自動去重,所以可以比較字典和原列表的長度,跟方法一很像
lst=[1,3,5,8,9,9,0,0]
dic={}.fromkeys(lst)
#這種方法建立字典,會把列表里的元素當做字典的鍵,由於字典的鍵不能重復,所以會自動去重
if len(dic)==len(lst):
print('列表里的元素互不重復!')
else:
print('列表里有重復的元素!')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM