Python列表去重的六种方法

探索Python列表去重的六种高效策略</


方法一:利用set的独特性质</


Python内置的set数据结构具有无序且不允许重复元素的特性,我们可以巧妙地利用这个特性来去重。通过将列表转换为set,再转换回list,即可实现去重,尽管set会打乱原有顺序,但这是唯一可能丢失顺序的方法</


方法二:借助字典的键值对</


利用字典的fromkeys()函数,将列表中的元素作为键,可以自动去除重复,因为字典的键必须是唯一的。但同样,这种方法同样无法保持原有的元素顺序</


方法三:常规遍历操作</


通过遍历列表,将每个元素检查其在列表中是否首次出现,如果未出现则添加,这种方法保留了原始顺序。代码如下:


<pre>new_list = []
for item in old_list:
if item not in new_list:
new_list.append(item)</pre>

方法四:列表推导式</


列表推导式同样可以简洁地去重,同时保持元素顺序:new_list = [x for i, x in enumerate(old_list) if x not in new_list[:i]]</


方法五与六:sort与sorted函数</


如果对顺序要求不高,可以利用sort()或sorted()函数,它们会根据元素的默认排序规则去除重复,然后重新排序。但注意,这将改变列表的原始顺序。


总结</


在Python中,根据实际需求和对顺序的敏感程度,选择合适的方法去除列表中的重复项至关重要。每种方法都有其适用场景,务必根据具体问题灵活运用。



  • Python鍒楄〃鍘婚噸鐨勫叚绉嶆柟娉
    绛旓細鎺㈢储Python鍒楄〃鍘婚噸鐨勫叚绉嶉珮鏁堢瓥鐣</ 鏂规硶涓锛氬埄鐢╯et鐨勭嫭鐗规ц川</ Python鍐呯疆鐨剆et鏁版嵁缁撴瀯鍏锋湁鏃犲簭涓斾笉鍏佽閲嶅鍏冪礌鐨勭壒鎬э紝鎴戜滑鍙互宸у鍦板埄鐢ㄨ繖涓壒鎬ф潵鍘婚噸銆傞氳繃灏嗗垪琛ㄨ浆鎹负set锛屽啀杞崲鍥瀕ist锛屽嵆鍙疄鐜板幓閲锛屽敖绠et浼氭墦涔卞師鏈夐『搴忥紝浣嗚繖鏄敮涓鍙兘涓㈠け椤哄簭鐨勬柟娉</銆傛柟娉曚簩锛鍊熷姪瀛楀吀鐨勯敭鍊瀵</ ...
  • python濡備綍瀵鍒楄〃杩涜鍘婚噸
    绛旓細涓銆佷娇鐢╯et杞寲娉曞幓閲 灏嗗垪琛ㄨ浆鎹负闆嗗悎鏄竴绉嶉潪甯告湁鏁堢殑鍘婚噸鏂规硶銆傞泦鍚堟槸涓绉嶆棤搴忎笖涓嶉噸澶嶇殑鏁版嵁缁撴瀯锛屽洜姝ゅ皢鍒楄〃杞崲涓洪泦鍚堜細鑷姩鍘婚櫎閲嶅鍏冪礌銆傜劧鍚庯紝浣犲彲浠ュ啀灏嗛泦鍚堣浆鍥炲垪琛ㄣ傜ず渚嬪涓嬶細python list1 = [1, 2, 2, 3, 4, 3, 5]list1 = list)浜屻鍒╃敤Python鍐呯疆鍑芥暟鍘婚噸 浣犺繕鍙互浣跨敤Python...
  • Python濡備綍瀵鍒楄〃杩涜鍘婚噸
    绛旓細1.浣跨敤set鐨勭壒鍨锛宲ython鐨剆et鍜屽叾浠栬瑷绫讳技,鏄竴涓棤搴忎笉閲嶅鍏冪礌闆唎rgList=[1,0,3,7,7,5]#list()鏂规硶鏄妸瀛楃涓瞫tr鎴栧厓缁勮浆鎴愭暟缁刦ormatList=list(set(orgList))print(formatList)缁撴灉锛歔0,1,3,5,7] 2.浣跨敤keys()鏂规硶orgList=[1,0,3,7,7,5]#list()鏂规硶鏄妸瀛楃涓瞫tr鎴栧厓缁...
  • python涓垪琛濡備綍鍘婚噸
    绛旓細1銆佸埄鐢ㄥ瓧鍏哥殑fromkeys()鍜宬eys()鏂规硶銆傚垪琛ㄥ幓閲 L =[1,2,3,4,5,6,6,5,4,3,2,1]鍒涘缓涓涓┖瀛楀吀 d ={} 鐢ㄥ瓧鍏哥殑fromkeys()鏂规硶鍘婚噸锛屽緱鍒颁竴涓瓧鍏革紝鍘婚噸涔嬪悗鐨勫厓绱犱负閿紝鍊间负None鐨勫瓧鍏 {1:None, 2:None, 3:None, 4:None, 5:None, 6:None} fromkeys(iterable,value=None)L = ...
  • Python銆傞噸澶嶅厓绱犲垽瀹氥傜紪鍐欎竴涓嚱鏁,鎺ュ彈鍒楄〃浣滀负鍙傛暟
    绛旓細浠g爜濡備笅锛歞ef func1(num_list):if len(num_list) != len(set(num_list)):return Trueelse:return Falseif __name__ == '__main__':num_list = [[1, 2, 3, 4], [6, 7, 8], [4, 5, 6, 6, 6]]for one_list in num_list:print(func1(one_list))杩愯缁撴灉锛...
  • Python鏁板瓧鍒楄〃鍘婚噸,濡備綍绠鍗曠殑鏃㈠幓閲嶈繕鑳芥寜鍘熸潵鐨勯『搴忚緭鍑?
    绛旓細Python鏁板瓧鍒楄〃鍘婚噸,杩樿兘鎸夊師鏉ョ殑椤哄簭杈撳嚭.绗竴绉嶆柟娉 alist = [1, 2, 2, 4, 4, 6, 7]b = []for i in alist:if i not in b:b.append(i)print(b)婧愪唬鐮(娉ㄦ剰婧愪唬鐮佺殑缂╄繘)绗簩绉嶆柟娉 alist = [1, 2, 2, 4, 4, 6, 7]formatList = list(set(alist))formatList.sort(...
  • python涓瀵筶ist鍘婚噸鐨澶绉嶆柟娉
    绛旓細python涓list鍘婚噸鐨勫绉嶆柟娉 浠婂ぉ閬囧埌涓涓棶棰橈紝鍦ㄥ悓浜嬮殢鎰忕殑鎻愮ず涓嬶紝鐢ㄤ簡 itertools.groupby 杩欎釜鍑芥暟銆備笉杩囪繖涓笢瑗挎渶缁堣繕鏄病鐢ㄤ笂銆傞棶棰樺氨鏄涓涓猯ist涓殑鏂伴椈id杩涜鍘婚噸锛屽幓閲嶄箣鍚庤淇濊瘉椤哄簭涓嶅彉銆鐩磋鏂规硶 鏈绠鍗曠殑鎬濊矾灏辨槸锛氳繖鏍蜂篃鍙锛屼絾鏄湅璧锋潵涓嶅鐖姐傜敤set 鍙﹀涓涓В鍐虫柟妗堝氨鏄敤set锛氫唬...
  • python鍒楄〃鎬庝箞鍘绘帀鐩稿悓鐨勬暟
    绛旓細鍒╃敤set()鍑芥暟锛屽彲浠ュ皢鍒楄〃鍘婚噸锛屽锛歴 = [1, 3, 3, 5, 7, 7, 8, 9]set(s) #杈撳嚭涓簕1, 3, 5, 7, 8, 9} list(set(s)) #杈撳嚭 [1, 3, 5, 7, 8, 9]
  • python涓濡備綍鍒犻櫎鍒楄〃涓噸澶嶇殑鍏冪礌
    绛旓細涓句釜渚嬪瓙锛屾瘮濡傛湁杩欐牱涓涓垪琛╨锛屽彲琛ㄧず涓篬1,2,2,5,3,6]锛屽畠鍙互閫氳繃涓嬮潰鐨勬搷浣滆揪鍒鍘婚噸鐨鐩殑锛歭=list(set(l))锛屽湪python shell涓唬鐮佹墽琛屽涓嬪浘鎵绀猴細python鍒楄〃鍘婚噸鎿嶄綔浠g爜杩愯缁撴灉
  • python濡備綍鎵归噺瀵规瘡涓涓猠xcel鏂囦欢杩涜鍘婚噸?
    绛旓細01 鍘婚噸 鎴戜滑浣跨敤Pandas搴撶殑drop_duplicates(subset=None, keep=鈥榝irst鈥, inplace=False)鍔熻兘鏉ュExcel鏂囦欢涓殑閲嶅椤硅繘琛屽垹闄ゃ傚叾涓紝subset鍙傛暟浠h〃鎸囧畾鍒楁爣璁帮紝榛樿褰撴瘡涓鏉¤璁板綍瀹屽叏鐩稿悓鏃讹紝鎵嶄細璁ゅ畾涓洪噸澶嶈锛沰eep=鈥樷欐湁鈥榝irst鈥欍佲榣ast鈥欏拰鈥楩alse鈥欙紝鎰忔濇槸鍒犻櫎閲嶅琛屾椂锛屼繚鐣檉irst杩樻槸last...
  • 扩展阅读:python怎么去掉重复项 ... 列表去重 ... python两个列表快速去重 ... 列表去重python代码 ... 学了python再学c++好学吗 ... python列表降序排序方法 ... python列表排序从大到小 ... 自学python的十大坑 ... python去除列表中重复元素 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网