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

yipeiwu_com7年前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到数组及列表去重后按原来顺序排序的方法。分享给大家供大家参考。

相关文章

如何在python中实现随机选择

这篇文章主要介绍了如何在python中实现随机选择,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 想从一个序列中随机抽取若干元素,或者...

Django 数据库同步操作技巧详解

Django 数据库同步操作技巧详解

同步数据库: 使用上述两条命令同步数据库 1.认识migrations目录: migrations目录作用:用来存放通过makemigrations命令生成的数据库脚本,里面的生成...

解决python 无法加载downsample模型的问题

downsample 在最新版本里面修改了位置 from theano.tensor.single import downsample (旧版本) 上面以上的的import会有error...

使用Python OpenCV为CNN增加图像样本的实现

使用Python OpenCV为CNN增加图像样本的实现

我们在做深度学习的过程中,经常面临图片样本不足、不平衡的情况,在本文中,作者结合实际工作经验,通过图像的移动、缩放、旋转、增加噪声等图像变换技术,能快速、简便的增加样本数量。 本文所有案...

Python中Numpy ndarray的使用详解

本文主讲Python中Numpy数组的类型、全0全1数组的生成、随机数组、数组操作、矩阵的简单运算、矩阵的数学运算。 尽管可以用python中list嵌套来模拟矩阵,但使用Numpy库更...