python3的編碼問題。
打開python開發(fā)工具IDLE,新建‘codetest.py'文件,并寫代碼如下:
import sys print (sys.getdefaultencoding())
F5運(yùn)行程序,打印出系統(tǒng)默認(rèn)編碼方式
將字符串從str格式編碼程bytes格式,修改代碼如下:
import sys print (sys.getdefaultencoding()) s = '你好' print (type(s)) b = s.encode('utf-8') print (type(b)) print (b)
?
其中b = s.encode('utf-8') 等同于b = s.encode() ,因?yàn)橄到y(tǒng)默認(rèn)編碼方式就是utf-8
F5運(yùn)行程序,打印出內(nèi)容如下,中文必須用utf-8編碼,因?yàn)閍scii碼表示不了所有漢字,這里暫時(shí)不介紹gbk編碼,現(xiàn)在用得很少了,utf-8使用3個(gè)字節(jié)表示一個(gè)漢字,ascii使用一個(gè)字節(jié)表示一個(gè)英文字母或字符。
解碼就是從bytes變回str的過程,修改代碼如下:
import sys print (sys.getdefaultencoding()) s = '你好' print (type(s)) b = s.encode('utf-8') print (type(b)) print (b) se = b.decode('utf-8') print (se) print (type(se))
?
F5運(yùn)行程序,打印內(nèi)容如下圖,bytes轉(zhuǎn)回str
utf-8編碼兼容ascii,當(dāng)既有中文又有英文時(shí)使用encode('utf-8'),英文還是占一個(gè)字節(jié),中國三個(gè)字節(jié),另外當(dāng)py文件注釋有中文時(shí),需要在頭部添加
#coding:utf-8
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
