python编码问题导致报错该怎么办,如何解决
Admin 2022-09-08 群英技术资讯 914 次浏览
在这篇文章中,我们来学习一下“python编码问题导致报错该怎么办,如何解决”的相关知识,下文有详细的讲解,易于大家学习和理解,有需要的朋友可以借鉴参考,下面就请大家跟着小编的思路一起来学习一下吧。有一次报错如下:
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 pd
content = 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 pd
content = pd.read_csv('news.csv',encoding='gb18030')
print(content.head())
即读取成功:

这类问题都是文件编码问题,至于文件到底是什么类型的编码,谁都不知道,只能用最常用的编码格式一个去试一下。这里我将文件编码格式改为gb18030,是偶尔看到有这种格式试出来的。。。。不知道现在有没有软件能够检测文件是什么类型就好了。。
通常,在python 文件,尤其是包含中文的python文件中,需要说明你的Python源程序文件使用的编码;如果未声明,程序默认使用ascii码来写,此时,书写中文的话python解释器一般会报错。
常见的编码声明:
# coding=utf-8 # coding:utf-8 # -*-coding=utf-8-*- # -*-coding:utf-8-*-
注意:
①coding后面使用:或=都可以。
②:或=与coding之间不能有空格,而:或=与编码之间有没有空格均可。
③编码声明一般放在python文件开头(第一行或第二行)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
制表符也属于“写法是两个字符的组合,但含义上只是一个字符”的情形。它的写法是“\t”,是反斜杠和t字母的组合,t取的是table之意。它的含义是一个字符,叫做制表符。它的作用是对齐表格数据的各列。
内容介绍一、用户输入1.输入字符串2.使用函数int()获取数值输入3.求模运算符的应用二、while循环1.简单的while循环2.通过用户输入退出while循环3.使用标志4.使用break退出循
Python中selenium库的作用是啥?对新手来说,可能对selenium库比较陌生,对于selenium库的作用和使用都不是很了解。对此,下面小编就给大家简单的介绍一下Python中的selenium库,感兴趣的朋友就继续往下看吧。
这篇文章主要介绍了Python数据类型、进制转换、字符串格式化,Python2中区分整型int、长整型long,Python3中只有统称为整型int,本文给大家介绍的非常详细,需要的朋友参考下吧
python3 默认的是UTF-8格式,但在在用dump写入的时候仍然要注意:如下importjsondata1={"TestId":"testcase001","Method":"post","Title":
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008