国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python處理JSON時的值報錯及編碼報錯的兩則解決實錄

2019-11-25 16:41:51
字體:
來源:轉載
供稿:網友

1、ValueError: Invalid control character at: line 1 column 8363 (char 8362)
使用json.loads(json_data)時,出現(xiàn):

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

出現(xiàn)錯誤的原因是字符串中包含了回車符(/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,當程序中出現(xiàn)非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')

這樣的話,系統(tǒng)在Python啟動的時候,自行調用該文件,設置系統(tǒng)的默認編碼。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 南昌市| 长丰县| 平远县| 雷波县| 永嘉县| 万载县| 府谷县| 宝兴县| 刚察县| 赫章县| 伊通| 监利县| 东乌珠穆沁旗| 方正县| 扶绥县| 南川市| 桂平市| 黄大仙区| 内丘县| 雷州市| 宜春市| 孟连| 文昌市| 吉木乃县| 漳平市| 小金县| 平武县| 桑日县| 星座| 万州区| 双柏县| 习水县| 阿克苏市| 神木县| 安图县| 襄城县| 美姑县| 安国市| 锡林浩特市| 正宁县| 定结县|