Python处理JSON时的值报错及编码报错的两则解决实录


Posted in Python onJune 26, 2016

1、ValueError: Invalid control character at: line 1 column 8363 (char 8362)
使用json.loads(json_data)时,出现:

ValueError: Invalid control character at: line 1 column 8363 (char 8362)

出现错误的原因是字符串中包含了回车符(\r)或者换行符(\n)
解决方法:
(1)对这些字符转义:

json_data = json_data.replace('\r', '\\r').replace('\n', '\\n')

(2)使用关键字strict:

json.loads(json_data, strict=False)

strict默认是True,它将严格控制内部字符串,将其设置为False,便可以允许你\n \r。

2、UnicodeEncodeError: ascii codec can't encode错误
在windows下写的python脚本,放到linux下运行,直接报:

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128)

出错原因是Python2.7在安装时,默认的编码是ascii,当程序中出现非ascii编码时,Python的处理常常会报这样的错,不过在Python3中就不会有这样的问题。
解决方法:
(1)临时解决方法:
在代码前加入:
import sys 
reload(sys) 
sys.setdefaultencoding('utf8')

(2)一劳永逸:
在Python的lib\site-packages文件夹下新建一个sitecustomize.py,内容如下:

# encoding=utf8 
import sys 

reload(sys) 
sys.setdefaultencoding('utf8')

这样的话,系统在Python启动的时候,自行调用该文件,设置系统的默认编码。

Python 相关文章推荐
讲解Python中的标识运算符
May 14 Python
python将unicode转为str的方法
Jun 21 Python
Python3网络爬虫之使用User Agent和代理IP隐藏身份
Nov 23 Python
手把手教你用python抢票回家过年(代码简单)
Jan 21 Python
Python实现的计算马氏距离算法示例
Apr 03 Python
Pytorch入门之mnist分类实例
Apr 14 Python
基于Python pip用国内镜像下载的方法
Jun 12 Python
使用python实现mqtt的发布和订阅
May 05 Python
使用WingPro 7 设置Python路径的方法
Jul 24 Python
python实现梯度下降和逻辑回归
Mar 24 Python
解决Python Matplotlib绘图数据点位置错乱问题
May 16 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
Jan 30 Python
Python使用自带的ConfigParser模块读写ini配置文件
Jun 26 #Python
Python读写txt文本文件的操作方法全解析
Jun 26 #Python
Python实现快速排序算法及去重的快速排序的简单示例
Jun 26 #Python
python结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 #Python
理解生产者消费者模型及在Python编程中的运用实例
Jun 26 #Python
python安装mysql-python简明笔记(ubuntu环境)
Jun 25 #Python
Python的装饰器用法学习笔记
Jun 24 #Python
You might like
header导出Excel应用示例
2014/01/24 PHP
xss防御之php利用httponly防xss攻击
2014/03/21 PHP
php使用正则过滤js脚本代码实例
2014/05/10 PHP
php+highchats生成动态统计图
2014/05/21 PHP
理清PHP在Linxu下执行时的文件权限方法
2017/06/07 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
爆炸式的JS圆形浮动菜单特效代码
2010/03/03 Javascript
cookie 最近浏览记录(中文escape转码)具体实现
2013/06/08 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
JS正则表达式验证数字代码
2014/01/28 Javascript
js中匿名函数的创建与调用方法分析
2014/12/19 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
js给网页加上背景音乐及选择音效的方法
2015/03/03 Javascript
开启Javascript中apply、call、bind的用法之旅模式
2015/10/28 Javascript
js中遍历Map对象的简单实例
2016/08/08 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
AngularJS实现ajax请求的方法
2016/11/22 Javascript
详解js模板引擎art template数组渲染的方法
2018/10/09 Javascript
webpack4+react多页面架构的实现
2018/10/25 Javascript
JavaScript实现缓动动画
2020/11/25 Javascript
js获取图片的base64编码并压缩
2020/12/05 Javascript
python操作excel文件并输出txt文件的实例
2018/07/10 Python
把pandas转换int型为str型的方法
2019/01/29 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
2019/08/30 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
2020/12/07 Python
html5调用摄像头功能的实现代码
2018/05/07 HTML / CSS
体育专业学生自我评价范文
2014/01/17 职场文书
小学数学教学反思
2014/02/02 职场文书
副乡长民主生活会个人对照检查材料思想汇报
2014/10/01 职场文书
2014幼儿园教育教学工作总结
2014/12/17 职场文书
2015国际残疾人日活动总结
2015/03/24 职场文书
Python中seaborn库之countplot的数据可视化使用
2021/06/11 Python
mysql中整数数据类型tinyint详解
2021/12/06 MySQL
js 实现Material UI点击涟漪效果示例
2022/09/23 Javascript