Python處理JSON時(shí)的值報(bào)錯(cuò)及編碼報(bào)錯(cuò)的兩則解決實(shí)錄
1、ValueError: Invalid control character at: line 1 column 8363 (char 8362)
使用json.loads(json_data)時(shí),出現(xiàn):
ValueError: Invalid control character at: line 1 column 8363 (char 8362)
出現(xiàn)錯(cuò)誤的原因是字符串中包含了回車(chē)符(\r)或者換行符(\n)
解決方法:
(1)對(duì)這些字符轉(zhuǎn)義:
json_data = json_data.replace('\r', '\\r').replace('\n', '\\n')
(2)使用關(guān)鍵字strict:
json.loads(json_data, strict=False)
strict默認(rèn)是True,它將嚴(yán)格控制內(nèi)部字符串,將其設(shè)置為False,便可以允許你\n \r。
2、UnicodeEncodeError: ascii codec can't encode錯(cuò)誤
在windows下寫(xiě)的python腳本,放到linux下運(yùn)行,直接報(bào):
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128)
解決方法:
(1)臨時(shí)解決方法:
在代碼前加入:
import sys
reload(sys)
sys.setdefaultencoding('utf8')
(2)一勞永逸:
在Python的lib\site-packages文件夾下新建一個(gè)sitecustomize.py,內(nèi)容如下:
# encoding=utf8
import sys
reload(sys)
sys.setdefaultencoding('utf8')
這樣的話(huà),系統(tǒng)在Python啟動(dòng)的時(shí)候,自行調(diào)用該文件,設(shè)置系統(tǒng)的默認(rèn)編碼。
相關(guān)文章
Python?Enum枚舉類(lèi)的定義及使用場(chǎng)景最佳實(shí)踐
枚舉(Enum)是一種有助于提高代碼可讀性和可維護(hù)性的數(shù)據(jù)類(lèi)型,允許我們?yōu)橐唤M相關(guān)的常量賦予有意義的名字,在Python中,枚舉類(lèi)(Enum)提供了一種簡(jiǎn)潔而強(qiáng)大的方式來(lái)定義和使用枚舉2023-11-11
Python?中的對(duì)象析構(gòu)函數(shù)__del__?詳情
這篇文章主要介紹了Python?中的對(duì)象析構(gòu)函數(shù)del詳情,Python?中的類(lèi)的構(gòu)造函數(shù)???__init__???,?每當(dāng)實(shí)例產(chǎn)生就會(huì)調(diào)用這個(gè)構(gòu)造函下面更多相關(guān)內(nèi)容,需要的小伙伴可以參考一下2022-03-03
使用Python的requests庫(kù)進(jìn)行網(wǎng)頁(yè)數(shù)據(jù)抓取的詳細(xì)教程
網(wǎng)絡(luò)爬蟲(chóng)是一種自動(dòng)化程序,用于從互聯(lián)網(wǎng)上抓取數(shù)據(jù),無(wú)論是用于數(shù)據(jù)分析、市場(chǎng)研究、學(xué)術(shù)研究,還是搜索引擎的網(wǎng)頁(yè)索引,爬蟲(chóng)技術(shù)都在現(xiàn)代互聯(lián)網(wǎng)應(yīng)用中發(fā)揮著重要作用,本文將通過(guò) requests 庫(kù) 來(lái)講解如何進(jìn)行基本的網(wǎng)頁(yè)數(shù)據(jù)抓取,需要的朋友可以參考下2025-03-03
python matplotlib實(shí)現(xiàn)坐標(biāo)投影的示例代碼
這篇文章主要為大家詳細(xì)介紹了python matplotlib實(shí)現(xiàn)坐標(biāo)投影,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-02-02
Python標(biāo)準(zhǔn)庫(kù)之?dāng)?shù)據(jù)庫(kù) sqlite3
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫(kù)的數(shù)據(jù)庫(kù) sqlite3的相關(guān)資料,SQLite是一個(gè)輕量級(jí)、跨平臺(tái)的關(guān)系型數(shù)據(jù)庫(kù)。它的核心引擎本身不依賴(lài)第三方的軟件,使用它也不需要“安裝”。下面文字將對(duì)其簡(jiǎn)單介紹,需要的小伙伴可以參考下面文章內(nèi)容2021-09-09
Pandas中的unique()和nunique()區(qū)別詳解
Pandas中Series和DataFrame的兩種數(shù)據(jù)類(lèi)型中都有nunique()和unique()方法,本文詳細(xì)的介紹了兩者的區(qū)別,具有一定的參考價(jià)值,感興趣的可以了解一下2022-08-08

