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

 更新时间:2019年12月20日 15:41:00   作者:hm11290219  
今天小编就为大家分享一篇python 读写文件包含多种编码格式的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

今天写一个脚本文件,需要将多个文件中的内容汇总到一个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 页面解析Beautiful Soup库的使用方法

    Python 页面解析Beautiful Soup库的使用方法

    Beautiful Soup 简称 BS4(其中 4 表示版本号)是一个 Python 中常用的页面解析库,它可以从 HTML 或 XML 文档中快速地提取指定的数据,这篇文章主要介绍了springboot 集成 docsify 实现随身文档 ,需要的朋友可以参考下
    2022-09-09
  • Python 中 and, or, &, |, ^ 的使用小结

    Python 中 and, or, &, |, ^ 

    这篇文章主要介绍了Python 中 and, or, &, |, ^ 的使用小结,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • Django rest framework基本介绍与代码示例

    Django rest framework基本介绍与代码示例

    这篇文章主要介绍了Django rest framework基本介绍与代码示例,简单叙述了rest framework的一些用处,可选择的相关软件包,然后分享了一个简单的模型支持的API的例子,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • python numpy中array与pandas的DataFrame转换方式

    python numpy中array与pandas的DataFrame转换方式

    这篇文章主要介绍了python numpy中array与pandas的DataFrame转换方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 使用tensorflow显示pb模型的所有网络结点方式

    使用tensorflow显示pb模型的所有网络结点方式

    今天小编就为大家分享一篇使用tensorflow显示pb模型的所有网络结点方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python使用Pandas库提升项目的运行速度过程详解

    python使用Pandas库提升项目的运行速度过程详解

    这篇文章主要介绍了python使用Pandas库提升项目的运行速度过程详解,这是一篇关于“如何充分利用Pandas内置的强大且易于上手的特性”的指引。此外,你将学习到一些实用的节省时间的技巧,需要的朋友可以参考下
    2019-07-07
  • Python matplotlib中plt.plot()函数的颜色参数设置及可以直接运行的程序代码

    Python matplotlib中plt.plot()函数的颜色参数设置及可以直接运行的程序代码

    在数据可视化中matplotlib.pyplot模块的plot函数是一个非常重要且常用的工具,用于绘制2D图形,这篇文章主要给大家介绍了关于Python matplotlib中plt.plot()函数的颜色参数设置及可以直接运行的程序代码,需要的朋友可以参考下
    2024-03-03
  • Python基于docker部署的Mysql备份查询脚本

    Python基于docker部署的Mysql备份查询脚本

    这篇文章主要来和大家分享Python基于docker部署的Mysql备份查询的脚本,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起了解下
    2024-04-04
  • python使用ctypes模块调用windowsapi获取系统版本示例

    python使用ctypes模块调用windowsapi获取系统版本示例

    这篇文章主要介绍了python使用ctypes模块调用windowsapi获取系统版本示例,需要的朋友可以参考下
    2014-04-04
  • Python输入圆半径,计算圆周长和面积的实现方式

    Python输入圆半径,计算圆周长和面积的实现方式

    这篇文章主要介绍了Python输入圆半径,计算圆周长和面积的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12

最新评论