python中文亂碼的解決方法
亂碼原因:
源碼文件的編碼格式為utf-8,但是window的本地默認(rèn)編碼是gbk,所以在控制臺直接打印utf-8的字符串當(dāng)然是亂碼了!
解決方法:
1、print mystr.decode('utf-8').encode('gbk')
2、比較通用的方法:
import sys
type = sys.getfilesystemencoding()
print mystr.decode('utf-8').encode(type)
1. Python中列表或字典輸出亂碼的解決方法
問題: Python中的列表(list)或字典包含中文字符串,直接使用print會出現(xiàn)以下的結(jié)果:
#打印字典 dict = {'name': '張三'} print dict >>>{'name': '\xe5\xbc\xa0\xe4\xb8\x89'} #打印列表 list = [{'name': '張三'}] print list >>>[{'name': '\xe5\xbc\xa0\xe4\xb8\x89'}]
解決方案:
使用以下方法進(jìn)行輸出:
import json #打印字典 dict = {'name': '張三'} print json.dumps(dict, encoding="UTF-8", ensure_ascii=False) >>>{'name': '張三'} #打印列表 list = [{'name': '張三'}] print json.dumps(list, encoding="UTF-8", ensure_ascii=False) >>>[{'name': '張三'}]
2. Python2.7的UnicodeEncodeError: ‘a(chǎn)scii' codec can't encode異常錯(cuò)誤
#重置編碼格式 import sys reload(sys) sys.setdefaultencoding('utf-8')
以上就是python中文亂碼的解決方法的詳細(xì)內(nèi)容,更多關(guān)于python亂碼的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python?pandas按行、按列遍歷DataFrame的幾種方式
在python的DataFrame中,因?yàn)閿?shù)據(jù)中可以有多個(gè)行和列,而且每行代表一個(gè)數(shù)據(jù)樣本,我們可以將DataFrame看作數(shù)據(jù)表,那你知道如何按照數(shù)據(jù)表中的行遍歷嗎,下面這篇文章主要給大家介紹了關(guān)于Python?pandas按行、按列遍歷DataFrame的幾種方式,需要的朋友可以參考下2022-09-09Python&Matlab實(shí)現(xiàn)櫻花的繪制
正值櫻花飄落的季節(jié),本文將利用Python和Matlab分別繪制一顆櫻花樹,文中的示例代碼講解詳細(xì),感興趣的小伙伴快跟隨小編一起動(dòng)手嘗試一下2022-04-04解決Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯(cuò)誤的問題
這篇文章主要介紹了Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯(cuò)誤的解決辦法,本文給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03使用python自動(dòng)追蹤你的快遞(物流推送郵箱)
本文講解如何讓 python自動(dòng)為你查詢快遞信息 ,并在物流發(fā)生更新或者到達(dá)指定地點(diǎn)時(shí)第一時(shí)間將 物流推送至你的郵箱,本文通過實(shí)例代碼截圖的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-03-03