首页 > 编程 > Python > 正文

python实现文本去重且不打乱原本顺序

2019-11-25 16:57:41
字体:
来源:转载
供稿:网友

代码也是在网上找的,效率挺不错的,特别适合字典文件的去重

#coding=utf-8import sysdef open_txt(): #打开TXT文本写入数组try:xxx = file(sys.argv[1], 'r')for xxx_line in xxx.readlines():passlist.append(xxx_line)xxx.close()except:return 0def write_txt(): #打开TXT文本写入数组try:yyy = file(sys.argv[2], 'w')for i in list_passwed:yyy.write(i)yyy.close()except:return 0global 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到数组及列表去重后按原来顺序排序的方法。分享给大家供大家参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表