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库的使用方法
Beautiful Soup 简称 BS4(其中 4 表示版本号)是一个 Python 中常用的页面解析库,它可以从 HTML 或 XML 文档中快速地提取指定的数据,这篇文章主要介绍了springboot 集成 docsify 实现随身文档 ,需要的朋友可以参考下2022-09-09
Python 中 and, or, &, |, ^ 
这篇文章主要介绍了Python 中 and, or, &, |, ^ 的使用小结,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧2024-01-01
Django rest framework基本介绍与代码示例
这篇文章主要介绍了Django rest framework基本介绍与代码示例,简单叙述了rest framework的一些用处,可选择的相关软件包,然后分享了一个简单的模型支持的API的例子,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下2018-01-01
python numpy中array与pandas的DataFrame转换方式
这篇文章主要介绍了python numpy中array与pandas的DataFrame转换方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-07-07
Python matplotlib中plt.plot()函数的颜色参数设置及可以直接运行的程序代码
在数据可视化中matplotlib.pyplot模块的plot函数是一个非常重要且常用的工具,用于绘制2D图形,这篇文章主要给大家介绍了关于Python matplotlib中plt.plot()函数的颜色参数设置及可以直接运行的程序代码,需要的朋友可以参考下2024-03-03
python使用ctypes模块调用windowsapi获取系统版本示例
这篇文章主要介绍了python使用ctypes模块调用windowsapi获取系统版本示例,需要的朋友可以参考下2014-04-04


最新评论