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 相关文章推荐
Swift 3.0在集合类数据结构上的一些新变化总结
Jul 11 Python
python list元素为tuple时的排序方法
Apr 18 Python
python中树与树的表示知识点总结
Sep 14 Python
使用Python给头像戴上圣诞帽的图像操作过程解析
Sep 20 Python
pytorch中的自定义数据处理详解
Jan 06 Python
np.dot()函数的用法详解
Jan 17 Python
keras获得model中某一层的某一个Tensor的输出维度教程
Jan 24 Python
pymysql 插入数据 转义处理方式
Mar 02 Python
Django QuerySet查询集原理及代码实例
Jun 13 Python
python 逆向爬虫正确调用 JAR 加密逻辑
Jan 12 Python
python运算符之与用户交互
Apr 13 Python
python和anaconda的区别
May 06 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中substr()与explode()函数用法分析
2014/11/24 PHP
Centos 6.5系统下编译安装PHP 7.0.13的方法
2016/12/19 PHP
Javascript 获取字符串字节数的多种方法
2009/06/02 Javascript
JavaScript CSS修改学习第二章 样式
2010/02/19 Javascript
jQuery 技巧小结
2010/04/02 Javascript
IE之动态添加DOM节点触发window.resize事件
2010/07/27 Javascript
ExtJs的Date格式字符代码
2010/12/30 Javascript
js change,propertychange,input事件小议
2011/12/20 Javascript
用最通俗易懂的代码帮助新手理解javascript闭包 推荐
2012/03/01 Javascript
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
appendChild() 或 insertBefore()使用与区别介绍
2013/10/11 Javascript
简洁Ajax函数处理(示例代码)
2013/11/15 Javascript
JS网页在线获取鼠标坐标值的方法
2015/02/28 Javascript
jquery通过name属性取值的简单实现方法
2016/06/20 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
JavaScript中动态向表格添加数据
2017/01/24 Javascript
JavaScript结合HTML DOM实现联动菜单
2017/04/05 Javascript
Vue中的数据监听和数据交互案例解析
2017/07/12 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
js操作table中tr的顺序实现上移下移一行的效果
2018/11/22 Javascript
浅析Python中MySQLdb的事务处理功能
2016/09/21 Python
python中实现将多个print输出合成一个数组
2018/04/19 Python
django利用request id便于定位及给日志加上request_id
2018/08/26 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
如何基于python实现画不同品种的樱花树
2020/01/03 Python
python GUI库图形界面开发之PyQt5信号与槽多窗口数据传递详细使用方法与实例
2020/03/08 Python
Python 如何操作 SQLite 数据库
2020/08/17 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
HTML5实现签到 功能
2018/10/09 HTML / CSS
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
转让协议书范本
2014/04/15 职场文书
致800米运动员广播稿(10篇)
2014/10/17 职场文书
故宫导游词
2015/01/31 职场文书
使用Django框架创建项目
2022/06/10 Python