python实现文本去重且不打乱原本顺序
投稿:mdxy-dxy
这篇文章主要介绍了python实现文本去重且不打乱原本顺序,需要的朋友可以参考下
代码也是在网上找的,效率挺不错的,特别适合字典文件的去重
#coding=utf-8 import sys def open_txt(): #打开TXT文本写入数组 try: xxx = file(sys.argv[1], 'r') for xxx_line in xxx.readlines(): passlist.append(xxx_line) xxx.close() except: return 0 def write_txt(): #打开TXT文本写入数组 try: yyy = file(sys.argv[2], 'w') for i in list_passwed: yyy.write(i) yyy.close() except: return 0 global passlist #声明全局变量 passlist = [] #用户名:anonymous 密码为空 open_txt() #TXT导入数组 #passlist = list(set(passlist)) #python 列表去重 global list_passwed #列表去重,不打乱原来的顺序 list_passwed=[] for i in passlist: if i not in list_passwed: list_passwed.append(i) write_txt()
python 读取TXT到数组 列表去重,不打乱原来的顺序
#################################################################### #qq:316118740 #BLOG:http://hi.baidu.com/alalmn # python 读取TXT到数组 列表去重,不打乱原来的顺序 # 刚学写的不好请大家见谅 #################################################################### def open_txt(): #打开TXT文本写入数组 try: infile = file('admin.txt', 'r') xxx = file('admin.txt', 'r') for xxx_line in xxx.readlines(): passlist.append(xxx_line) xxx.close() except: return 0 def list_del(): #清空list列表 try: i = 0 #得到list的第一个元素 while i < len(passlist): del passlist[i] del list_passwed[i] except: return 0 ###################################### global passlist #声明全局变量 passlist = [] #用户名:anonymous 密码为空 www_cj(www) #域名拆解 open_txt() #TXT导入数组 #passlist = list(set(passlist)) #python 列表去重 global list_passwed #列表去重,不打乱原来的顺序 list_passwed=[] for i in passlist: if i not in list_passwed: list_passwed.append(i) ###################################### 遍历数组组合出 密码 I1 = 0 #得到list的第一个元素 while I1 < len(list_passwed): print "WWWWWWWWWWW",I1 if I1==len(list_passwed): break #退出循环 I2 = 0 #得到list的第一个元素 while I2 < len(list_passwed): print "1111:",list_passwed[I1],"2222:",list_passwed[I2] I2 = I2 + 1 #二层 I1 = I1 + 1 #一层 ######################################
补充
# -*- coding: utf-8 -*- ''' 只使用与较小的文件,比较大的文件运行时间长 ''' def quchong(infile,outfile): infopen = open(infile,'r',encoding='utf-8') outopen = open(outfile,'w',encoding='utf-8') lines = infopen.readlines() list_1 = [] for line in lines: if line not in list_1: list_1.append(line) outopen.write(line) infopen.close() outopen.close() quchong("源文件路径","目标文件路径")
本文实例讲述了python读取TXT到数组及列表去重后按原来顺序排序的方法。分享给大家供大家参考。