1. 程式人生 > >python小練習2:刪除列表中重複的元素

python小練習2:刪除列表中重複的元素

題目:刪除列表中重複的元素

如果列表中有重複的元素,我們想要刪除重複的,應該怎麼做呢?有好多種方法,這裡先總結三種方法

1.while 迴圈

 li = [1,2,3,4,5,2,1,3,4,57,8,8,9]# 當然這裡可以使用內建函式raw_input,從鍵盤獲取資料
 print li       #先打印出列表li
 i = 0          #變數i是li的下標,初始化為0
 j = 1          #再定義一個下標,初始化為1
 while i < len(li):    # 迴圈條件
     j = i + 1   #這裡的意思是,比如先拿出1,再拿出2,把2和1比較,判斷是否相等,所以,後面拿出的數的下標要比前一個元素的下標多一位
while j < len(li): # 當然j也要小於li的長度 if li[i] == li[j]: del li[j] #相等的話,把後面那個元素刪掉,繼續迴圈 continue j = j + 1 i = i + 1 print li

看一下結果:
這裡寫圖片描述

2.用 remove 函式實現

li = "abcd" * 10
li = list(li)  #將字串轉化為列表,這大家都會吧
li.sort()  #將列表排序,sort是排序的意思
print li
i = 0
for s in li: #對於li中的每一個元素s print i,s while li.count(s) > 1: #li.count(s)是統計裡中s的個數 li.remove(s) #刪除li列表中的元素s i = i + 1 print li

看一下結果:
這裡寫圖片描述

3.用set實現

li = [1,2,3,4,5,2,1,3,4,57,8,8,9]
print list(set(li))

結果:

[1, 2, 3, 4, 5, 8, 9, 57]