python如何删除文件中重复的字段

本文实例为大家分享了python如何删除文件中重复字段的具体代码,供大家参考,具体内容如下

原文件内容放在list中,新文件内容按行查找,如果没有出现在list中则写入第三个文件中。

import csv

filetxt1 = 'E:/gg/log/log1.txt'

filecsv1 = 'E:/gg/log/log1.csv'

filecsv2 = 'E:/gg/log/log2.csv'

filecsv3 = 'E:/gg/log/log3.csv'

class operFileCsv():

def __init__(self, filename=None):

self.filename = filename

def readCsvFile(self):

readCsvHandler = open(self.filename, 'r')

filelines = csv.reader(readCsvHandler, dialect='excel')

for fileline in filelines:

print(fileline)

readCsvHandler.close

def writeCsvFile(self, writeline):

writeCsvHandler = open(self.filename, 'a', newline='')

csvWrite = csv.writer(writeCsvHandler, dialect='excel', )

csvWrite.writerow(writeline)

writeCsvHandler.close()

class getLogBuffFromFile():

def __init__(self):

self.logBuff1 = []

def getLog1Buff(self, filename):

with open(filename) as filehandler:

while True:

logOneLine = filehandler.readline().strip()

if not logOneLine:

break

self.logBuff1.append(logOneLine)

# print('TRACE: The log1 has ', len(self.logBuff1), ' lines.')

return self.logBuff1

def getLog2Buff(self, logOneLine):

pass

class deleteIterantLog():

def __init__(self):

self.logBuff1List = None

self.logBuff2OneLine = None

def deleteProcedure(self, oldlog, newlog, createlog):

self.logBuff1List = getLogBuffFromFile().getLog1Buff(oldlog)

self.dealProcedure(newlog, createlog)

def dealProcedure(self, file1name, file2name):

with open(file1name, 'r') as readCsvHandler:

filelines = csv.reader(readCsvHandler, dialect='excel')

for fileline in filelines:

if fileline[1] not in self.logBuff1List:

operFileCsv(file2name).writeCsvFile(fileline)

if __name__ == '__main__':

deleteIterantLog().deleteProcedure(filetxt1, filecsv2, filecsv3)

小编再为大家分享一段Python用集合把文本中重复的字去掉的方法:

import os,sys,datetime

import codecs

with open('aaaaa.txt', 'r') as f: #读入文本中的文件

l = f.readlines() # txt中所有字符串读入data

x=set(l[0])

for i in range(1,len(l)):

x.update(l[i])

s="".join(list(x))

print(s)

with open('result.txt','wb') as f1: #把结果写到文件result中

b=bytes(s,encoding="utf-8")

f1.write(b)

更多关于python安装教程的文章请参考《python各版本安装教程》

更多精彩书单,请点击python编程必备书单

领取干货:零基础入门学习python视频教程

以上是 python如何删除文件中重复的字段 的全部内容, 来源链接: utcz.com/z/336265.html

回到顶部