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 相关文章推荐
wxpython学习笔记(推荐查看)
Jun 09 Python
Python手机号码归属地查询代码
May 04 Python
python获取当前用户的主目录路径方法(推荐)
Jan 12 Python
python2与python3中关于对NaN类型数据的判断和转换方法
Oct 30 Python
利用arcgis的python读取要素的X,Y方法
Dec 22 Python
python pandas库的安装和创建
Jan 10 Python
Python中类的创建和实例化操作示例
Feb 27 Python
在交互式环境中执行Python程序过程详解
Jul 12 Python
python打包成so文件过程解析
Sep 28 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
python解决OpenCV在读取显示图片的时候闪退的问题
Feb 23 Python
利用Python+OpenCV三步去除水印
May 28 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
基于PHP生成静态页的实现方法
2013/05/10 PHP
php中引用符号(&)的使用详解
2013/11/13 PHP
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
2014/08/08 PHP
php版微信自动登录并获取昵称的方法
2016/09/23 PHP
详解Yii2高级版引入bootstrap.js的一个办法
2017/03/21 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
Javascript 各浏览器的 Javascript 效率对比
2008/01/23 Javascript
jquery聚焦文本框与扩展文本框聚焦方法
2012/10/12 Javascript
经过绑定元素时会多次触发mouseover和mouseout事件
2014/02/28 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
原生JS绑定滑轮滚动事件兼容常见浏览器
2014/06/30 Javascript
javascript简单实现滑动菜单效果的方法
2015/07/27 Javascript
JS实现点击按钮控制Div变宽、增高及调整背景色的方法
2015/08/05 Javascript
jQuery基础知识点总结(必看)
2016/05/31 Javascript
浅谈React的最大亮点之虚拟DOM
2018/05/29 Javascript
vue根据进入的路由进行原路返回的方法
2018/09/26 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
vue 解决computed修改data数据的问题
2019/11/06 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
OpenLayers3实现测量功能
2020/09/25 Javascript
[45:46]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS DT
2014/05/23 DOTA
python中遍历文件的3个方法
2014/09/02 Python
Python实现的科学计算器功能示例
2017/08/04 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
CSS3 画基本图形,圆形、椭圆形、三角形等
2016/09/20 HTML / CSS
个人求职信范例
2014/01/29 职场文书
作风建设演讲稿
2014/05/23 职场文书
大一工商管理职业生涯规划:有梦最美,行动相随
2014/09/18 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
领导干部作风建设工作总结
2014/10/23 职场文书
小孩不笨观后感
2015/06/03 职场文书
幽默导游词应该怎么写?
2019/08/26 职场文书
JavaScript原始值与包装对象的详细介绍
2021/05/11 Javascript