亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Python > 正文

你應該知道的python列表去重方法

2020-02-23 04:17:20
字體:
來源:轉載
供稿:網友

前言

列表去重是寫Python腳本時常遇問題,因為不管源數據來自哪里,當我們轉換成列表的方式時,有可能預期的結果不是我們最終的結果,最常見的就是列表中元素有重復,這時候第一件事我們就要做去重處理。

我們先來個最簡單的方式,用python內置的數據類型set來實現。

假設我們的列表數據是這樣的:

level_names = [ u'Second Level', u'Second Level', u'Second Level', u'First Level', u'First Level']

因為集合的元素是不能重復的,所以將列表轉換成集合時,會自動去掉重復的元素,這就是基本原理,代碼如下:

>>> the_list = set(level_names)>>> print(the_list)set([u'Second Level', u'First Level'])

這種方式缺點是再轉換成列表時無法保存之前的列表順序,如果沒這個要求,這種方式是最簡答的, 也許有的小伙伴覺得好簡單呀,這沒什么技術含量嗎,沒錯,所以一般面試題里讓你列表去重一般會這么寫:

請寫出列表去重的方法(不能用set)

人家寫明不能用set了,所以呢,這招有時候還不能用,那當然也難不倒我們,我們還有其他方法。

我們都知道列表可以遍歷,能遍歷問題也就簡單了,我們再定義空列表,然后遍歷有數據的列表,再遍歷時加一個判斷,如果在空列表里沒有,就加進去,如果有了就丟掉,代碼如下:

the_list = []for level in level_names: if level not in the_list:  the_list.append(level)print(the_list)

大家覺得這種方式是不是還可以,但這種方式對付一般的小列表是沒問題的,但如果遇到一個超級大列表,也會力不從心,因為在the_list列表變的非常大,在判斷時候會影響效率,因為列表是按索引順序去查找的,當數據量很大時會變慢。

也許你要問了,那我遇到大的列表咋辦? 有更牛掰點的方法嗎?當然有,讓我們繼續,既然在判斷時用列表會影響效率,那我們就轉換一個思路,我們用集合,那你可能要問了,那集合就快了?沒錯,因為set使用的hash函數查找值,雖然set無序,但位置是固定的,只需一次就可以查到特定元素是否存在,網上有人做了列表和set的元素查找對比,相同的數據條件下,用list耗時16分鐘,用set耗時是52秒,這一對比看出效果了吧,別的不多說了,貼代碼:

the_list = []the_set = set()for level in level_names: if level not in the_set:  the_set.add(level)  the_list.append(level)print(the_list)

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
8090理伦午夜在线电影| 精品国产31久久久久久| 在线播放国产一区中文字幕剧情欧美| 久久精品国产成人精品| 欧洲中文字幕国产精品| 亚洲精品国产精品自产a区红杏吧| 久久91精品国产| 91在线中文字幕| 久久久精品欧美| 国产精品男人的天堂| 91性高湖久久久久久久久_久久99| 91九色视频导航| 久久五月情影视| 中文字幕免费国产精品| 久久精品国产亚洲| 成人午夜激情免费视频| 另类天堂视频在线观看| 久热精品视频在线免费观看| 欧美电影免费观看电视剧大全| 久久国产精品久久久久久久久久| 欧美色播在线播放| 亚洲人av在线影院| 日本国产欧美一区二区三区| 国产精品色婷婷视频| 日韩中文字幕第一页| 亚洲国产精品久久91精品| 伊人激情综合网| 国产一区二区三区在线观看网站| 8x海外华人永久免费日韩内陆视频| 国产精品揄拍500视频| 亚洲成人国产精品| 国产99久久精品一区二区永久免费| 在线电影中文日韩| 国产在线观看91精品一区| 久久香蕉国产线看观看网| 久久不射热爱视频精品| 欧美成人黑人xx视频免费观看| 精品女同一区二区三区在线播放| 国产综合香蕉五月婷在线| 欧美国产第一页| 热re91久久精品国99热蜜臀| 欧美在线免费观看| 亚洲精品99999| 成人免费淫片aa视频免费| 亚洲黄色成人网| 亚洲第一视频在线观看| 国产精品美女网站| 日韩三级成人av网| 一区二区三区视频免费| 久久精彩免费视频| 午夜精品视频网站| 亚洲女人天堂色在线7777| 亚洲人成绝费网站色www| www.久久撸.com| 亚洲一区久久久| 夜夜嗨av色一区二区不卡| 久久久精品视频成人| 综合136福利视频在线| 日韩av免费在线| 成人av在线网址| 少妇高潮久久久久久潘金莲| 亚洲影视中文字幕| 永久免费毛片在线播放不卡| 久久久亚洲国产天美传媒修理工| 中文字幕久热精品在线视频| 欧美日韩裸体免费视频| 亚洲无亚洲人成网站77777| 久热99视频在线观看| 欧美精品在线免费| 91精品久久久久久综合乱菊| 中文字幕精品在线视频| 91高潮在线观看| 亚洲国产精品va在看黑人| 亚洲欧美中文另类| 综合网中文字幕| 美女啪啪无遮挡免费久久网站| 亚洲高清av在线| 91亚洲精品视频| 91精品久久久久久久久久另类| 九九热视频这里只有精品| 亚洲最大的av网站| 色悠悠国产精品| 日韩美女福利视频| 亚洲综合精品一区二区| 福利视频第一区| 精品久久久久久久久久久久久| 91高清视频在线免费观看| 欧美日韩中文在线| 国产精品视频最多的网站| 日韩极品精品视频免费观看| 最新国产精品拍自在线播放| 91久久精品美女高潮| 国产一区视频在线播放| 国内精品小视频| 亚洲精品中文字幕女同| 日韩电影中文 亚洲精品乱码| 91在线|亚洲| 国产精品久久久亚洲| 日韩h在线观看| 欧美久久精品午夜青青大伊人| 亚洲综合在线中文字幕| 伊人男人综合视频网| 久久国产色av| 精品国产一区二区三区久久| 国产69精品久久久久99| 久久五月情影视| 日韩欧中文字幕| 久久夜色撩人精品| 日韩免费av片在线观看| 在线视频日韩精品| 国产999视频| 亚洲精品黄网在线观看| 国产精品久久视频| 欧美一级bbbbb性bbbb喷潮片| 欧美裸体xxxx极品少妇软件| 国产日韩av在线播放| 美女啪啪无遮挡免费久久网站| 亚洲成av人片在线观看香蕉| 91大神在线播放精品| 福利视频第一区| 日韩电影在线观看永久视频免费网站| 少妇久久久久久| 欧美激情视频一区二区三区不卡| 亚洲视频综合网| 欧美日韩国产精品一区二区三区四区| 亚洲毛片在线观看.| 久久久黄色av| 国产精品第一视频| 久久国产精品99国产精| 日韩电影在线观看免费| 欧美高清视频在线| 日韩美女av在线| 国产综合久久久久久| 欧美日韩在线影院| 亚洲色图偷窥自拍| 久久久精品久久久久| 久久人人爽人人爽人人片av高请| 亚洲精品videossex少妇| 国产日本欧美一区二区三区在线| 久久精彩免费视频| 日韩欧美成人精品| 久久久av亚洲男天堂| 欧美在线一级视频| 91久久国产精品91久久性色| 国产精品国产自产拍高清av水多| 色无极亚洲影院| 国产日韩欧美中文| 亚洲va码欧洲m码| 精品久久久久人成| 久久久久九九九九| 精品亚洲精品福利线在观看| 日韩美女免费视频| 日本精品视频网站| 亚洲图片欧美午夜| 国产乱人伦真实精品视频| 操日韩av在线电影| 91精品国产综合久久久久久久久| 国产精品久久999| 国产精品69久久| 欧美在线观看日本一区| 欧美久久精品一级黑人c片| 午夜精品久久久99热福利| 日本亚洲精品在线观看| 欧美日韩中国免费专区在线看|