python读取csv,txt,excel类似文件出现UnicodeDecodeError错误

错误如下:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xff in position 0
简单粗暴,用Windows的记事本打开源文件,编码格式改为utf-8,再用pandas,xlrd等库文件读文件就解决了。
原因是因为python读文件的时候默认使用utf-8编码,而存下来的文件鱼龙混杂,很大一部分是ANSI编码。

原文地址:https://blog.51cto.com/healer/2357632

时间: 2024-11-09 05:02:44

python读取csv,txt,excel类似文件出现UnicodeDecodeError错误的相关文章

Python 读取csv报错编码问题 : UnicodeDecodeError: 'utf-8' codec can't decode byte 0x87 in position 10: invalid start byte

1.报错信息 UnicodeDecodeError: 'utf-8' codec can't decode byte 0x87 in position 10: invalid start byte 2.解决方法 查找相关资料,发现一个棒棒的解决方法: 首先把csv文件以记事本的格式打开,默认保存是ANSI编码,我们应该手动修改成utf-8 ===>(如果记事本打开后是乱码,我们可以把csv数据粘贴到记事本上后保存) 3.接下来可以愉快的读文件咯 with csv23.open_csv(r'C:\

python读取和生成excel文件

今天来看一下如何使用python处理excel文件,处理excel文件是在工作中经常用到的,python为我们考虑到了这一点,python中本身就自带csv模块. 1.用python读取csv文件: csv是逗号分隔符格式 一般我们用的execl生成的格式是xls和xlsx  直接重命名为csv的话会报错: Error: line contains NULL byte insun解决方案:出错原因是直接是把后缀为xls的execl文件重命名为csv的 正常的要是另存为csv文件 就不会报错了 譬

Python读取中文txt文件错误:UnicodeEncodeError: 'gbk' codec can't encode character

1 with open(file,'r') as f: 2 line=f.readline() 3 i=1 4 while line: 5 line=line.decode('utf-8') 6 print str(i)+": "+line7 line=f.readline() 8 i=i+1 用以上代码读取一个包含中文的txt文件时,在正确地读取并打印了六百多行之后,print str(i)+": "+line这一行报错: UnicodeEncodeError:

csv,txt,excel文件之间的转换

最近接触一些需要csv,txt,excel文件之间的转换,根据一些网上搜索加上自己的改动,实现自己想要的结果为主要目的,代码的出处已经找不到了,还请见谅,以下主要是针对csv&excel 和txt&excel写的perl脚本. 主要用到的模块是: Text::CSVSpreadsheet::WriteExcel Spreadsheet::ParseExcel Spreadsheet::ParseExcel::FmtUnicode Unicode::Map 可以支持中文,具体也没有要仔细说明

Python读取CSV文件,报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in position 727: illegal multibyte sequence

Python读取CSV文件,报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in position 727: illegal multibyte sequence 解决办法: 在语句open(sFileName,newline='')中,增加encoding='UTF-8',如下: open(sFileName,newline='',encoding='UTF-8') Python读取CSV文件,报错:UnicodeDecode

python读取csv转换为dataframe

前言: 由于在处理结构性数据的时候经常会读取本地形如:.xls.xlsx.csv等的数据.所以今天就花了点时间来总结一下利用python读取csv数据并且转换为dataframe的数据框架.话不多说,直接附代码: import csv from pandas.core.frame import DataFrame import pandas as pd tmp_lst = [] with open('filename_path.csv', 'r') as f: reader = csv.read

利用Python读取CSV文件并计算某一列的均值和方差

近日朋友需要帮忙对excel的csv文件进行处理,求取某银行历年股价的均值方差等一系列数据 文件的构成很简单,部分如下所示 总共有接近七千行数据,主要的工作就是将其中的股价数据提取出来,放入一个数组之中,然后利用numpy模块即可求出需要的数据. 这里利用了csv模块来对文件进行处理,最终实现的代码如下: import csv import numpy as np with open('pingan_stock.csv') as csv_file: row = csv.reader(csv_fi

本地文件读取(csv,txt)时字符编码问题解决

今天进行csv文件读取时,老是入库为空,因为其中有中文字符,我要通过中文字符映射成相应的编号(上升:1011,下降:1012),于是怎么也取不到编号.刚开始以为程序映射出了问题,最后日志打出来后,发现读取的csv文件内容中文全为乱码.啊啊啊,好坑.于是看了下别人写的读取csv文件的代码,果然是没有设置字符编码.通过字符读取文件,转为字节流一定要进行字符编码设置,否则跑到测试环境或生产环境会使用本地默认字符集,那就坑大了. 问题代码: BufferedReader in = new Buffere

用python写CSV、EXCEL文件

import pandas as pd writer = pd.ExcelWriter('output.xlsx') df1 = pd.DataFrame(data={'col1':[1,1], 'col2':[2,2]}) df1.to_excel(writer,'Sheet1') writer.save() http://www.cnblogs.com/liutongqing/p/6892099.html import csv   # 读取csv文件方式1 csvFile = open("c