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


Posted in Python onJuly 16, 2019

本文实例为大家分享了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 相关文章推荐
使用python提取html文件中的特定数据的实现代码
Mar 24 Python
跟老齐学Python之编写类之三子类
Oct 11 Python
跟老齐学Python之模块的加载
Oct 24 Python
使用Python发送邮件附件以定时备份MySQL的教程
Apr 25 Python
python将字符串转换成数组的方法
Apr 29 Python
python中引用与复制用法实例分析
Jun 04 Python
Python 基础知识之字符串处理
Jan 06 Python
Python处理session的方法整理
Aug 29 Python
python获取Linux发行版名称
Aug 30 Python
Python Celery多队列配置代码实例
Nov 22 Python
python3 字符串str和bytes相互转换
Mar 23 Python
Python&Matlab实现樱花的绘制
Apr 07 Python
python字符串切割:str.split()与re.split()的对比分析
Jul 16 #Python
Python使用正则表达式分割字符串的实现方法
Jul 16 #Python
Python Django切换MySQL数据库实例详解
Jul 16 #Python
Python二维码生成识别实例详解
Jul 16 #Python
python3.6+selenium实现操作Frame中的页面元素
Jul 16 #Python
Python Web版语音合成实例详解
Jul 16 #Python
windows下python虚拟环境virtualenv安装和使用详解
Jul 16 #Python
You might like
php中curl、fsocket、file_get_content三个函数的使用比较
2014/05/09 PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
2019/03/12 PHP
php+iframe 实现上传文件功能示例
2020/03/04 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
2010/12/28 Javascript
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
浅谈JavaScript之事件绑定
2013/07/08 Javascript
原生js获取宽高与jquery获取宽高的方法关系对比
2014/04/04 Javascript
跟我学习javascript的最新标准ES6
2015/11/20 Javascript
javascript求日期差的方法
2016/03/02 Javascript
jQuery解决$符号命名冲突
2016/06/18 Javascript
javascript表达式和运算符详解
2017/02/07 Javascript
jquery实现焦点轮播效果
2017/02/23 Javascript
关于vue.js过渡css类名的理解(推荐)
2017/04/10 Javascript
vue实现form表单与table表格的数据关联功能示例
2019/01/29 Javascript
JavaScript面向对象程序设计中对象的定义和继承详解
2019/07/29 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
javascript实现前端分页功能
2020/11/26 Javascript
python 测试实现方法
2008/12/24 Python
Python入门篇之条件、循环
2014/10/17 Python
python统计文本文件内单词数量的方法
2015/05/30 Python
Python操作MongoDB详解及实例
2017/05/18 Python
Django框架之登录后自定义跳转页面的实现方法
2019/07/18 Python
Python threading的使用方法解析
2019/08/28 Python
python xlwt如何设置单元格的自定义背景颜色
2019/09/03 Python
解决Python import .pyd 可能遇到路径的问题
2021/03/04 Python
CSS3 优势以及网页设计师如何使用CSS3技术
2009/07/29 HTML / CSS
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
市场营销专业推荐信
2013/11/03 职场文书
高一历史教学反思
2014/01/13 职场文书
校庆活动方案
2014/03/31 职场文书
工程售后服务方案
2014/06/08 职场文书
工程安全生产协议书
2014/11/21 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
爱国主题班会教案
2015/08/14 职场文书