作者:Gakki
01. 使用內(nèi)置 set 方法去重
- set() 函數(shù)創(chuàng)建一個(gè)無序不重復(fù)元素集,可進(jìn)行關(guān)系測(cè)試瓮钥,刪除重復(fù)數(shù)據(jù)式散,還可以計(jì)算交集、差集惧眠、并集等
- sort() 函數(shù)用于對(duì)原列表進(jìn)行排序籽懦,如果指定參數(shù),則使用比較函數(shù)指定的比較函數(shù)氛魁。
- list.sort(cmp=None, key=None, reverse=False)
- cmp:可選參數(shù), 如果指定了該參數(shù)會(huì)使用該參數(shù)的方法進(jìn)行排序暮顺。
- key:主要是用來進(jìn)行比較的元素,只有一個(gè)參數(shù)秀存,具體的函數(shù)的參數(shù)就是取自于可迭代對(duì)象中拖云,指定可迭代對(duì)象中的一個(gè)元素來進(jìn)行排序。
- reverse -- 排序規(guī)則应又,reverse = True 降序宙项, reverse = False 升序(默認(rèn))。
- 該方法沒有返回值株扛,但是會(huì)對(duì)列表的對(duì)象進(jìn)行排序尤筐。
test_data = [1, 2, 3, 4, 3, 5, 2, 2]
class ListReverse:
"""
列表去重,并按照原來的順序排序
"""
# 利用 set 方法去重
def duplicate_1(self, data):
new_data = list(set(data))
# 利用 sort() 方法進(jìn)行排序
new_data.sort(key=data.index)
return new_data
if __name__ == '__main__':
test = ListReverse()
print(test.duplicate_1(test_data))
[1, 2, 3, 4, 5]
02. 使用常規(guī)方法去重
old_list = [1, 2, 3, 4, 3, 5, 2, 2]
new_list = []
for value in old_list:
if value not in new_list:
new_list.append(value)
print(new_list)
[1, 2, 3, 4, 5]
03. 使用列表推導(dǎo)式去重
old_list = [1, 2, 3, 4, 3, 5, 2, 2]
new_list = []
[new_list.append(i) for i in old_list if i not in new_list]
print(new_list)
[1, 2, 3, 4, 5]
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者