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中字符编码简介、方法及使用建议
Jan 08 Python
理解Python中的With语句
Feb 02 Python
在Python中用has_key()方法查找键是否存在的教程
May 21 Python
python中zip()方法应用实例分析
Apr 16 Python
Python 专题六 局部变量、全局变量global、导入模块变量
Mar 20 Python
用python找出那些被“标记”的照片
Apr 20 Python
Python通过调用有道翻译api实现翻译功能示例
Jul 19 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
Aug 05 Python
学习python可以干什么
Feb 26 Python
Python字符串的常见操作实例小结
Apr 08 Python
python创建学生成绩管理系统
Nov 22 Python
python读写Excel表格的实例代码(简单实用)
Dec 19 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
php4的session功能评述(一)
2006/10/09 PHP
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
2017/09/20 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
2019/08/30 PHP
JQuery的一些小应用收集
2010/03/27 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
javascript实现图片上传前台页面
2015/08/18 Javascript
js实现的鼠标滚轮滚动切换页面效果(类似360默认页面滚动切换效果)
2016/01/27 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
javascript中获取class的简单实现
2016/07/12 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
2016/12/05 Javascript
从零开始做一个pagination分页组件
2017/03/15 Javascript
Flask中获取小程序Request数据的两种方法
2017/05/12 Javascript
js防刷新的倒计时代码 js倒计时代码
2017/09/06 Javascript
在Vue中使用axios请求拦截的实现方法
2018/10/25 Javascript
JQuery发送ajax请求时中文乱码问题解决
2019/11/14 jQuery
vue实现在线学生录入系统
2020/05/30 Javascript
[03:27]《辉夜杯》线下训练营 导师CU和海涛指点迷津
2015/10/23 DOTA
[40:48]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第二局
2016/02/28 DOTA
零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers
2014/11/05 Python
浅谈python新手中常见的疑惑及解答
2016/06/14 Python
Python3实现发送QQ邮件功能(html)
2017/12/15 Python
详解Python核心编程中的浅拷贝与深拷贝
2018/01/07 Python
python实现树形打印目录结构
2018/03/29 Python
Python3.8中使用f-strings调试
2019/05/22 Python
python tkinter基本属性详解
2019/09/16 Python
LTD Commodities:礼品,独特发现,家居装饰,家用器皿
2017/08/11 全球购物
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
安全环保标语
2014/06/09 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
领导班子对照检查剖析材料
2014/10/13 职场文书
作风建设年活动实施方案
2014/10/24 职场文书
领导班子整改方案
2014/10/25 职场文书
市委常委会班子党的群众路线教育实践活动整改方案
2014/10/25 职场文书
带你了解Java中的ForkJoin
2022/04/28 Java/Android