python 读写文件包含多种编码格式的解决方式


Posted in Python onDecember 20, 2019

今天写一个脚本文件,需要将多个文件中的内容汇总到一个txt文件中,由于多个文件有三种不同的编码方式,读写出现错误,先将解决方法记录如下:

# -*- coding: utf-8 -*-
import wave
import pylab as pl
import numpy as np
import pandas as pd
import os
import time
import datetime
import arrow
import chardet
import sys 
reload(sys) 
sys.setdefaultencoding('utf8') 
os.chdir("F:/new_srt")


#get words of srt file
###########################################
def get_word():
 path = "F:/new_srt"
 filelist = os.listdir(path)
 for files in filelist:
  print files
  encoding = chardet.detect(open(files,'r').read())['encoding']
  if encoding == 'utf-8':
   data=pd.read_csv(files,encoding="utf-8",sep='\r',header=None)
  elif encoding == 'GB2312':
   try:
    data=pd.read_csv(files,encoding="gbk",sep='\r',header=None)
   except UnicodeDecodeError:
    data=pd.read_csv(files,encoding="utf-8",sep='\r',header=None)
  elif encoding == 'UTF-8-SIG':
   data=pd.read_csv(files,encoding="UTF-8-SIG",sep='\r',header=None)
  else:
   print 'this is an error about %s' % files 

  data_new=pd.DataFrame(np.reshape(data.values, (-1,3)))
  data_new.columns=['index','timecut','content']
  filename = os.path.splitext(files)[0]  #filetype = os.path.splitext(files)[1]
  with open('F:/result.txt', 'a') as file:
   file.write(str(filename)+' ' )
   for item in data_new['content']:
    file.write(item.decode("utf-8") +' ') #s=s.decode("utf-8") 
   file.write('\n')


if __name__ == '__main__':
 get_word()

以上这篇python 读写文件包含多种编码格式的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python文件写入实例分析
Apr 08 Python
Python中关于使用模块的基础知识
May 24 Python
Python argv用法详解
Jan 08 Python
详解python中requirements.txt的一切
Mar 03 Python
把django中admin后台界面的英文修改为中文显示的方法
Jul 26 Python
TensorFlow学习之分布式的TensorFlow运行环境
Feb 05 Python
详解pandas.DataFrame.plot() 画图函数
Jun 14 Python
使用Keras预训练好的模型进行目标类别预测详解
Jun 27 Python
Python requests及aiohttp速度对比代码实例
Jul 16 Python
python定时截屏实现
Nov 02 Python
安装python依赖包psycopg2来调用postgresql的操作
Jan 01 Python
Flask response响应的具体使用
Jul 15 Python
pandas 中对特征进行硬编码和onehot编码的实现
Dec 20 #Python
使用python3批量下载rbsp数据的示例代码
Dec 20 #Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
Dec 20 #Python
Python字符串、列表、元组、字典、集合的补充实例详解
Dec 20 #Python
python获取网络图片方法及整理过程详解
Dec 20 #Python
python序列化与数据持久化实例详解
Dec 20 #Python
爬虫代理池Python3WebSpider源代码测试过程解析
Dec 20 #Python
You might like
人大复印资料处理程序_查询篇
2006/10/09 PHP
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
php计算两个文件相对路径的方法
2015/03/14 PHP
Linux系统递归生成目录中文件的md5的方法
2015/06/29 PHP
php实现对短信验证码发送次数的限制实例讲解
2021/03/04 PHP
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
基于jquery的checkbox下拉框插件代码
2010/06/25 Javascript
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
关于jQuery object and DOM element
2013/04/15 Javascript
js调用后台servlet方法实例
2013/06/09 Javascript
基于JQuery实现分隔条的功能
2016/06/17 Javascript
javascript 判断页面访问方式电脑或者移动端
2016/09/19 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
微信小程序button组件使用详解
2018/01/31 Javascript
在Vue中使用Compass的方法
2018/03/02 Javascript
jQuery+Cookie实现切换皮肤功能【附源码下载】
2018/03/25 jQuery
jQuery实现鼠标滑过商品小图片上显示对应大图片功能【测试可用】
2018/04/27 jQuery
nodejs(officegen)+vue(axios)在客户端导出word文档的方法
2018/07/31 NodeJs
Vue CLI3 如何支持less的方法示例
2018/08/29 Javascript
基于vue、react实现倒计时效果
2019/08/26 Javascript
js实现上下左右键盘控制div移动
2020/01/16 Javascript
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
在Python中使用next()方法操作文件的教程
2015/05/24 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
利用Python对文件夹下图片数据进行批量改名的代码实例
2019/02/21 Python
Python 下载及安装详细步骤
2019/11/04 Python
Python3 实现减少可调用对象的参数个数
2019/12/20 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
九年级政治教学反思
2014/02/06 职场文书
《中华少年》教学反思
2014/02/15 职场文书
法英专业大学生职业生涯规划范文:衡外情,量己力!
2014/09/23 职场文书
授权委托书(法人单位用)
2014/09/29 职场文书
2014年采购工作总结
2014/11/20 职场文书
教师工作表现评语
2014/12/31 职场文书
vue el-table实现递归嵌套的示例代码
2022/08/14 Vue.js