溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

代碼實例講解python3的編碼問題

發(fā)布時間:2020-08-26 13:08:05 來源:腳本之家 閱讀:154 作者:卡和我 欄目:開發(fā)技術(shù)

python3的編碼問題。

打開python開發(fā)工具IDLE,新建‘codetest.py'文件,并寫代碼如下:

import sys

print (sys.getdefaultencoding())

代碼實例講解python3的編碼問題

F5運行程序,打印出系統(tǒng)默認(rèn)編碼方式

代碼實例講解python3的編碼問題

將字符串從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() ,因為系統(tǒng)默認(rèn)編碼方式就是utf-8

代碼實例講解python3的編碼問題

F5運行程序,打印出內(nèi)容如下,中文必須用utf-8編碼,因為ascii碼表示不了所有漢字,這里暫時不介紹gbk編碼,現(xiàn)在用得很少了,utf-8使用3個字節(jié)表示一個漢字,ascii使用一個字節(jié)表示一個英文字母或字符。

代碼實例講解python3的編碼問題

解碼就是從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))

 

代碼實例講解python3的編碼問題

F5運行程序,打印內(nèi)容如下圖,bytes轉(zhuǎn)回str

代碼實例講解python3的編碼問題

utf-8編碼兼容ascii,當(dāng)既有中文又有英文時使用encode('utf-8'),英文還是占一個字節(jié),中國三個字節(jié),另外當(dāng)py文件注釋有中文時,需要在頭部添加

#coding:utf-8

代碼實例講解python3的編碼問題

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI