溫馨提示×

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

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

Python字符串介紹

發(fā)布時(shí)間:2020-05-23 16:54:35 來(lái)源:億速云 閱讀:260 作者:鴿子 欄目:編程語(yǔ)言

  1、字符和字節(jié)

  一個(gè)字符不等價(jià)于一個(gè)字節(jié),字符是人類能夠識(shí)別的符號(hào),可以有多種表示方法,不同的表示方法會(huì)使用不同的字節(jié)數(shù)。比如字母A-Z都可以用ASCII碼表示(占用一個(gè)字節(jié)),也可以用Unicode表示(占兩個(gè)字節(jié)),還可以用UTF-8表示(占用一個(gè)字節(jié))。

  字符編碼的作用是將人類可識(shí)別的字符轉(zhuǎn)換為機(jī)器可識(shí)別的字節(jié)碼以及反向過(guò)程。Unicode是真正的字符串,而用ASCII、UTF-8、GBK等字符編碼表示的是字節(jié)串。

  2、編碼和解碼

  以Unicode為例,編碼(encode)是將Unicode字符串(中的代碼點(diǎn))轉(zhuǎn)換特定字符編碼對(duì)應(yīng)的字節(jié)串的過(guò)程和規(guī)則;解碼(decode)是將特定字符編碼的字節(jié)串轉(zhuǎn)換為對(duì)應(yīng)的Unicode字符串(中的代碼點(diǎn))的過(guò)程和規(guī)則。

  無(wú)論是編碼還是解碼,都需要一個(gè)重要因素,就是特定的字符編碼。因?yàn)橐粋€(gè)字符用不同的字符編碼進(jìn)行編碼后的字節(jié)值以及字節(jié)個(gè)數(shù)大部分情況下是不同的,反之亦然。

  3、Python編碼轉(zhuǎn)換

  Python編碼類型默認(rèn)是UTF-8,Python2的默認(rèn)編碼是ASCII,不能識(shí)別中文字符,需要顯式指定字符編碼;Python3的默認(rèn)編碼為Unicode,可以識(shí)別中文字符。

  在Python中不同編碼的轉(zhuǎn)換都要經(jīng)過(guò)Unicode,不論是UTF-8或者是GBK,整個(gè)過(guò)程都是先通過(guò)編碼decode轉(zhuǎn)換為Unicode告訴Unicode當(dāng)前的編碼格式是什么、然后再通過(guò)解碼encode轉(zhuǎn)換為自己想要實(shí)現(xiàn)的編碼格式或類型。

  4、常見(jiàn)編碼錯(cuò)誤原因

  1)Python解釋器的默認(rèn)編碼

  2)Python源文件文件編碼

  3)Terminal使用的編碼

  4)操作系統(tǒng)的語(yǔ)言設(shè)置

  作為人工智能時(shí)代的最佳編程語(yǔ)言,Python吸引了廣泛關(guān)注,選擇學(xué)習(xí)Python的人日益增多。盡管Python入門簡(jiǎn)單,但企業(yè)的高要求促使越來(lái)越多的人參加專業(yè)系統(tǒng)學(xué)習(xí)并積累實(shí)戰(zhàn)經(jīng)驗(yàn)。

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

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

AI