python实现列表去重_python实现七种列表去重方法
#encoding=utf-8import timetime_start=time.time()print u"列表去重的七種方法"print u"第一種測試方法"repeat_list=[1,2,4,1,5,1,2,5]result=[]for i in repeat_list: if i not in result: result.append(i)print u"第一種去重結(jié)果: ",resultprint u"第二種測試方法"repeat_list=[1,2,4,1,5,1,2,5]result={}print u"第二種去重結(jié)果: ",list(result.fromkeys(repeat_list))print u"第三種測試方法"repeat_list=[1,2,4,1,5,1,2,5]print u"第三種去重結(jié)果: ",list(set(repeat_list))print u"第四種測試方法"repeat_list=[1,2,4,1,5,1,2,5]import itertoolsdef test_groupby(x): if x==1: print "lower" elif x>1 and x<4: print "middle" elif x>=4: print "higher"
repeat_list=sorted(repeat_list)data=itertools.groupby(repeat_list,key=test_groupby)for i,j in data: print list(j)data=itertools.groupby(repeat_list)result=[]for i,j in data: result.append(i)print u"第四種去重結(jié)果: ",resultprint u"第五種測試方法"repeat_list=[1,2,4,1,5,1,2,5]for i in [j for j in repeat_list if repeat_list.count(i)>1]: for x in range(repeat_list.count(i)-1): repeat_list.remove(i)print u"第五種去重結(jié)果: ",repeat_listprint u"第六種測試方法"repeat_list=[1,2,4,1,5,1,2,5]i=0while i<=len(repeat_list)-1: if repeat_list.count(repeat_list[i])>1: repeat_list.pop(i) else: i+=1print u"第六種去重結(jié)果: ",repeat_listprint u"第七種測試方法"repeat_list=[1,2,4,1,5,1,2,5]func=lambda x,y:x if y in x else x + [y]print u"第七種去重結(jié)果: ",reduce(func,[[],]+repeat_list)print "_"*20print u"去重程序耗時%f" % (time.time()-time_start)print "_"*20time.sleep(3)
總結(jié)
以上是生活随笔為你收集整理的python实现列表去重_python实现七种列表去重方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五一假期出行人数将爆炸式增长 多个行业
- 下一篇: 不允许对系统目录进行即席更新_还不懂Do