欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?encode()方法和decode()方法詳解

 更新時(shí)間:2022年12月28日 14:14:19   作者:北城石橋  
encode() 方法為字符串類型(str)提供的方法,用于將 str 類型轉(zhuǎn)換成 bytes 類型,這個(gè)過程也稱為“編碼”,這篇文章主要介紹了Python?encode()方法和decode()方法,需要的朋友可以參考下

Python encode()方法

encode() 方法為字符串類型(str)提供的方法,用于將 str 類型轉(zhuǎn)換成 bytes 類型,這個(gè)過程也稱為“編碼”。

encode() 方法的語(yǔ)法格式如下:

str.encode([encoding="utf-8"][,errors="strict"])

注意,格式中用 [] 括起來的參數(shù)為可選參數(shù),也就是說,在使用此方法時(shí),可以使用 [] 中的參數(shù),也可以不使用。

該方法各個(gè)參數(shù)的含義如表 1 所示。

表 1 encode()參數(shù)及含義

參數(shù)含義
str表示要進(jìn)行轉(zhuǎn)換的字符串。
encoding = "utf-8"指定進(jìn)行編碼時(shí)采用的字符編碼,該選項(xiàng)默認(rèn)采用 utf-8 編碼。例如,如果想使用簡(jiǎn)體中文,可以設(shè)置 gb2312。

當(dāng)方法中只使用這一個(gè)參數(shù)時(shí),可以省略前邊的“encoding=”,直接寫編碼格式,例如 str.encode("UTF-8")。
errors = "strict"指定錯(cuò)誤處理方式,其可選擇值可以是:
  • strict:遇到非法字符就拋出異常。
  • ignore:忽略非法字符。
  • replace:用“?”替換非法字符。
  • xmlcharrefreplace:使用 xml 的字符引用。
該參數(shù)的默認(rèn)值為 strict。

注意,使用 encode() 方法對(duì)原字符串進(jìn)行編碼,不會(huì)直接修改原字符串,如果想修改原字符串,需要重新賦值。

【例 1】將 str 類型字符串“C語(yǔ)言”轉(zhuǎn)換成 bytes 類型。

>>> str = "C語(yǔ)言"
>>> str.encode()
b'C\xe8\xaf\xad\xe8\xa8\x80\xe4\xb8\xad\xe6\x96\x87\xe7\xbd\x91'

此方式默認(rèn)采用 UTF-8 編碼,也可以手動(dòng)指定其它編碼格式,例如:

>>> str = "C語(yǔ)言"
>>> str.encode('GBK')
b'C\xd3\xef\xd1\xd4\xd6\xd0\xce\xc4\xcd\xf8'

Python decode()方法

和 encode() 方法正好相反,decode() 方法用于將 bytes 類型的二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為 str 類型,這個(gè)過程也稱為“解碼”。

decode() 方法的語(yǔ)法格式如下:

bytes.decode([encoding="utf-8"][,errors="strict"])

該方法中各參數(shù)的含義如表 2 所示。

表 2 decode()參數(shù)及含義

參數(shù)含義
bytes表示要進(jìn)行轉(zhuǎn)換的二進(jìn)制數(shù)據(jù)。
encoding="utf-8"指定解碼時(shí)采用的字符編碼,默認(rèn)采用 utf-8 格式。當(dāng)方法中只使用這一個(gè)參數(shù)時(shí),可以省略“encoding=”,直接寫編碼方式即可。

注意,對(duì) bytes 類型數(shù)據(jù)解碼,要選擇和當(dāng)初編碼時(shí)一樣的格式。
errors = "strict"指定錯(cuò)誤處理方式,其可選擇值可以是:
  • strict:遇到非法字符就拋出異常。
  • ignore:忽略非法字符。
  • replace:用“?”替換非法字符。
  • xmlcharrefreplace:使用 xml 的字符引用。
該參數(shù)的默認(rèn)值為 strict。

【例 2】

>>> str = "C語(yǔ)言"
>>> bytes=str.encode()
>>> bytes.decode()
'C語(yǔ)言'

注意,如果編碼時(shí)采用的不是默認(rèn)的 UTF-8 編碼,則解碼時(shí)要選擇和編碼時(shí)一樣的格式,否則會(huì)拋出異常,例如:

>>> str = "C語(yǔ)言"
>>> bytes = str.encode("GBK")
>>> bytes.decode()? #默認(rèn)使用 UTF-8 編碼,會(huì)拋出以下異常
Traceback (most recent call last):
? File "<pyshell#10>", line 1, in <module>
??? bytes.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd3 in position 1: invalid continuation byte
>>> bytes.decode("GBK")
'C語(yǔ)言'

到此這篇關(guān)于Python encode()方法和decode()方法的文章就介紹到這了,更多相關(guān)Python encode()方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL最常見的操作語(yǔ)句小結(jié)

    MySQL最常見的操作語(yǔ)句小結(jié)

    這篇文章主要介紹了MySQL最常見的操作語(yǔ)句小結(jié),與表和庫(kù)相關(guān)的這些語(yǔ)句是學(xué)習(xí)MySQL中最基礎(chǔ)的知識(shí),需要的朋友可以參考下
    2015-05-05
  • 單利模式及python實(shí)現(xiàn)方式詳解

    單利模式及python實(shí)現(xiàn)方式詳解

    單例模式(Singleton Pattern)是一種常用的軟件設(shè)計(jì)模式,該模式的主要目的是確保 某一個(gè)類只有一個(gè)實(shí)例存在.這篇文章主要介紹了單利模式及python實(shí)現(xiàn)方式及Python單例模式的4種實(shí)現(xiàn)方法,需要的朋友可以參考下
    2018-03-03
  • nlp自然語(yǔ)言處理基于SVD的降維優(yōu)化學(xué)習(xí)

    nlp自然語(yǔ)言處理基于SVD的降維優(yōu)化學(xué)習(xí)

    這篇文章主要為大家介紹了nlp自然語(yǔ)言處理基于SVD的降維優(yōu)化學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04
  • Win10下用Anaconda安裝TensorFlow(圖文教程)

    Win10下用Anaconda安裝TensorFlow(圖文教程)

    這篇文章主要介紹了Win10下用Anaconda安裝TensorFlow(圖文教程),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Python大數(shù)據(jù)之網(wǎng)絡(luò)爬蟲的post請(qǐng)求、get請(qǐng)求區(qū)別實(shí)例分析

    Python大數(shù)據(jù)之網(wǎng)絡(luò)爬蟲的post請(qǐng)求、get請(qǐng)求區(qū)別實(shí)例分析

    這篇文章主要介紹了Python大數(shù)據(jù)之網(wǎng)絡(luò)爬蟲的post請(qǐng)求、get請(qǐng)求區(qū)別,結(jié)合具體實(shí)例形式分析了Python網(wǎng)頁(yè)爬蟲post請(qǐng)求與get請(qǐng)求相關(guān)使用技巧,需要的朋友可以參考下
    2019-11-11
  • 推薦系統(tǒng)MostPopular算法的Python實(shí)現(xiàn)方式

    推薦系統(tǒng)MostPopular算法的Python實(shí)現(xiàn)方式

    這篇文章主要介紹了推薦系統(tǒng)MostPopular算法的Python實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Python?設(shè)計(jì)模式行為型解釋器模式

    Python?設(shè)計(jì)模式行為型解釋器模式

    本文介紹了Python解釋器模式,解釋器模式即Interpreter?Pattern,給定一個(gè)語(yǔ)言,定義它的文法的一種表示,并定義一個(gè)解釋器,這個(gè)解釋器使用該表示來解釋語(yǔ)言中的句子,下面文章進(jìn)入更深層學(xué)習(xí),需要的小伙伴可以參考一下
    2022-02-02
  • JupyterNotebook設(shè)置Python環(huán)境的方法步驟

    JupyterNotebook設(shè)置Python環(huán)境的方法步驟

    這篇文章主要介紹了JupyterNotebook設(shè)置Python環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Python圖像處理之識(shí)別圖像中的文字(實(shí)例講解)

    Python圖像處理之識(shí)別圖像中的文字(實(shí)例講解)

    今天小編就為大家分享一篇Python圖像處理之識(shí)別圖像中的文字(實(shí)例講解),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號(hào)

    Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號(hào)

    這篇文章主要介紹了Python實(shí)現(xiàn)隨機(jī)生成任意數(shù)量車牌號(hào),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01

最新評(píng)論