發(fā)布時(shí)間:2021-09-28 15:51:08來(lái)源:有考培訓(xùn)網(wǎng)綜合
南京火星時(shí)代python培訓(xùn)怎么樣?在學(xué)習(xí)python培訓(xùn)中,很多同學(xué)會(huì)在培訓(xùn)過程中遇到亂碼,有的小伙伴為了躲避中文亂碼的問題甚至代碼中不使用中文,注釋和提示都用英文,我曾經(jīng)也這樣干過,但這并不是解決問題,而是逃避問題,今天我們一起徹底解決Python中文亂碼的問題。
南京火星時(shí)代python培訓(xùn)怎么樣?
火星時(shí)代于1994年成立“王琦電腦動(dòng)畫工作室”,秉承“分享”的理念,把更多的CG技術(shù)分享給其他人,開啟了中國(guó)CG教育元年。火星時(shí)代教育是較早進(jìn)入中國(guó)數(shù)字藝術(shù)領(lǐng)域的企業(yè)。27年來(lái),火星時(shí)代教育攜手眾多國(guó)內(nèi)外知名企業(yè),大力培養(yǎng)數(shù)字藝術(shù)設(shè)計(jì)人才,共同推動(dòng)了中國(guó)數(shù)字藝術(shù)創(chuàng)意產(chǎn)業(yè)的發(fā)展。
亂碼原因:源碼文件的編碼格式為utf-8,但是window的本地默認(rèn)編碼是gbk,所以在控制臺(tái)直接打印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會(huì)出現(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
‘ascii' codec can't encode異常錯(cuò)誤
#重置編碼格式
import sys
reload(sys)sys.setdefaultencoding('utf-8')
以上就是python中文亂碼的解決方法的詳細(xì)內(nèi)容。