我正在從JSON獲取來自API的請求(使用Python 3.5)以及當我試圖打印(或使用)JSON時, response.text,json.loads(...)或response.json(),我得到一個UnicodeEncodeError。「UnicodeEncodeError:'ascii'編解碼器無法編碼字符」在Python3中
print(response.text)
UnicodeEncodeError: 'ascii' codec can't encode character '\xc5' in position 676: ordinal not in range(128)
JSON中包含了字典與國家名稱的數組,其中一些包含特殊字符,如:(例如二進制數組中只有一個字典)
b'[{\n "name" : "\xc3\x85land Islands"\n}]
我不知道爲什麼有一個編碼問題,並且爲什麼當請求檢測到UTF-8編碼時(甚至通過手動設置爲UTF-8不會改變任何內容),使用「ascii」。
編輯2:問題是Microsoft Visual Studio Code 1.4。它無法打印字符。
的錯誤提示字符不能是*編碼* ascii - 這意味着問題不是讀取/解碼文本,而是將其編碼爲字節(打印時) – janbrohl
[UnicodeEncodeError:'ascii'編解碼器無法在位置20編碼字符u'\ xa0'序號不在範圍內(128)](http://stackoverflow.com/questions/994259 4/unicodeencodeerror-ASCII的編解碼器斜面編碼字符-U-XA0-在位-20) –