unicode 编码转换漏洞_好程序员Python教程之字符串编码知识小结
好程序員Python教程之字符串編碼知識小結,提及Python字符串,你會想到什么?是ASCII,還是Unicode?他們之間是如何轉換的?字符串編碼和字符串有什么區別?接下來好程序員Python教程就給大家分享Python入門教程中有關字符串的知識點。
1、字符和字節
一個字符不等價于一個字節,字符是人類能夠識別的符號,可以有多種表示方法,不同的表示方法會使用不同的字節數。比如字母A-Z都可以用ASCII碼表示(占用一個字節),也可以用Unicode表示(占兩個字節),還可以用UTF-8表示(占用一個字節)。
字符編碼的作用是將人類可識別的字符轉換為機器可識別的字節碼以及反向過程。Unicode是真正的字符串,而用ASCII、UTF-8、GBK等字符編碼表示的是字節串。
2、編碼和解碼
以Unicode為例,編碼(encode)是將Unicode字符串(中的代碼點)轉換特定字符編碼對應的字節串的過程和規則;解碼(decode)是將特定字符編碼的字節串轉換為對應的Unicode字符串(中的代碼點)的過程和規則。
無論是編碼還是解碼,都需要一個重要因素,就是特定的字符編碼。因為一個字符用不同的字符編碼進行編碼后的字節值以及字節個數大部分情況下是不同的,反之亦然。
3、Python編碼轉換
Python編碼類型默認是UTF-8,Python2的默認編碼是ASCII,不能識別中文字符,需要顯式指定字符編碼;Python3的默認編碼為Unicode,可以識別中文字符。
在Python中不同編碼的轉換都要經過Unicode,不論是UTF-8或者是GBK,整個過程都是先通過編碼decode轉換為Unicode告訴Unicode當前的編碼格式是什么、然后再通過解碼encode轉換為自己想要實現的編碼格式或類型。
4、常見編碼錯誤原因
1)Python解釋器的默認編碼
2)Python源文件文件編碼
3)Terminal使用的編碼
4)操作系統的語言設置
作為人工智能時代的最佳編程語言,Python吸引了廣泛關注,選擇學習Python的人日益增多。盡管Python入門簡單,但企業的高要求促使越來越多的人參加培訓班系統學習并積累實戰經驗。
總結
以上是生活随笔為你收集整理的unicode 编码转换漏洞_好程序员Python教程之字符串编码知识小结的全部內容,希望文章能夠幫你解決所遇到的問題。

- 上一篇: android 代码设置 键盘适应_An
- 下一篇: mysql的数据现实在小程序_使用php