解决编码问题:UnicodeDecodeError:|解决编码问题:UnicodeDecodeError: 'utf-8' codec can't decod
目录
- UnicodeDecodeError: 'utf-8' codec can't decod
- python的编码声明
UnicodeDecodeError: 'utf-8' codec can't decod 有一次报错如下:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 0: invalid start byte编码问题:
f = open(txtPath,'r',encoding='utf-8')
改为:
f = open(txtPath,'r',encoding='gbk')即可
print(f.read())
又有一次读取CSV文件时报错:
import pandas as pdcontent = pd.read_csv('news.csv',encoding='utf-8')print(content.head())
报错如下:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xba in position 0: invalid start byte
文章图片
这里我将编码问题 utf-8 改为 gbk,还是报错。。。。报错如下:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa2 in position 93: illegal multibyte sequence
文章图片
最后当我把程序改为:
import pandas as pdcontent = pd.read_csv('news.csv',encoding='gb18030')print(content.head())
即读取成功:
文章图片
这类问题都是文件编码问题,至于文件到底是什么类型的编码,谁都不知道,只能用最常用的编码格式一个去试一下。这里我将文件编码格式改为gb18030,是偶尔看到有这种格式试出来的。。。。不知道现在有没有软件能够检测文件是什么类型就好了。。
python的编码声明 通常,在python 文件,尤其是包含中文的python文件中,需要说明你的Python源程序文件使用的编码;如果未声明,程序默认使用ascii码来写,此时,书写中文的话python解释器一般会报错。
常见的编码声明:
# coding=utf-8# coding:utf-8# -*-coding=utf-8-*-# -*-coding:utf-8-*-
注意:
①coding后面使用:或=都可以。
②:或=与coding之间不能有空格,而:或=与编码之间有没有空格均可。
③编码声明一般放在python文件开头(第一行或第二行)
【解决编码问题:UnicodeDecodeError:|解决编码问题:UnicodeDecodeError: 'utf-8' codec can't decod】以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
推荐阅读
- python编码格式导致csv读取错误问题(csv.reader|python编码格式导致csv读取错误问题(csv.reader, pandas.csv_read)
- 如何做好“防御性编码”()
- Android开发调试无法连接到夜神模拟器的解决方法
- Android学习之APP点击功能闪退问题的处理一
- COM1005 Rambler问题
- 如何在Windows 10上编辑VCF文件(解决办法教程)
- 如何修复Windows 10 DisplayPort不工作(解决办法)
- 如何修复Windows 10 VLC字幕不起作用(解决办法教程)
- 如何修复Windows 10罗技扬声器无法运行(解决办法教程)
- 如何修复Windows 10中的Steam缺少文件权限(解决办法介绍)