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 21 Python
Python爬取个人微信朋友信息操作示例
Aug 03 Python
seek引发的python文件读写的问题及解决
Jul 26 Python
解决Djang2.0.1中的reverse导入失败的问题
Aug 16 Python
Python 图像对比度增强的几种方法(小结)
Sep 25 Python
手把手教你Python yLab的绘制折线图的画法
Oct 23 Python
用python的turtle模块实现给女票画个小心心
Nov 23 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
Jan 10 Python
使用Python求解带约束的最优化问题详解
Feb 11 Python
python 读取二进制 显示图片案例
Apr 24 Python
Python通过文本和图片生成词云图
May 21 Python
常用的10个Python实用小技巧
Aug 10 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实现的在线人员函数库
2008/04/09 PHP
php获取百度收录、百度热词及百度快照的方法
2015/04/02 PHP
CL vs ForZe BO5 第五场 2.13
2021/03/10 DOTA
jscript之Open an Excel Spreadsheet
2007/06/13 Javascript
用JS操作FRAME中的IFRAME及其内容的实现代码
2008/07/26 Javascript
javascript获取url上某个参数的方法
2013/11/08 Javascript
基于jquery自定义的漂亮单选按钮RadioButton
2013/11/19 Javascript
JS获取当前网址、主机地址项目根路径
2013/11/19 Javascript
点击显示指定元素隐藏其他同辈元素的方法
2014/02/19 Javascript
JavaScript函数获取事件源的小例子
2014/05/14 Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
2014/05/28 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
2016/04/05 Javascript
bootstrap学习笔记之初识bootstrap
2016/06/21 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
bootstrap modal+gridview实现弹出框效果
2017/08/15 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
2019/04/09 Javascript
webpack常用构建优化策略小结
2019/11/21 Javascript
[02:20]2014DOTA2西雅图邀请赛 MVP外卡赛首胜采访
2014/07/09 DOTA
[02:00]最后,我终于出了辉耀
2018/03/27 DOTA
python 使用pandas计算累积求和的方法
2019/02/08 Python
python学生管理系统的实现
2020/04/05 Python
英国领先的运动物理治疗供应公司:Vivomed
2018/07/14 全球购物
英国时尚泳装品牌:Maru Swimwear
2019/10/06 全球购物
编写用C语言实现的求n阶阶乘问题的递归算法
2014/10/21 面试题
【魔兽争霸3重制版】原版画面与淬火MOD画面对比
2021/03/26 魔兽争霸
超市实习总结自我鉴定
2013/09/19 职场文书
幼儿园户外活动总结
2014/07/04 职场文书
工厂采购员岗位职责
2015/04/07 职场文书
学校教师师德师风承诺书
2015/04/28 职场文书
2015小学毕业班工作总结
2015/07/21 职场文书
文明医院的标语集锦!
2019/07/24 职场文书
go原生库的中bytes.Buffer用法
2021/04/25 Golang
DBCA命令行搭建Oracle ADG的流程
2021/06/11 Oracle
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript