從ord 中對Unicode編碼的理解

2022-01-15 06:20:47 字數 521 閱讀 8924

剛開始學習程式設計的時候,老對字串編碼的理解模模糊糊。也一直看這方便的資料,今天在看dive in python時,突然有了新的理解(不知道是否正確)。

python有個built-in函式ord(),返回乙個字元的unicode值。這個函式並沒有其他引數,那就是說,給定乙個字元,就會有乙個特定值對應。跟具體編碼(utf-8,utf-16,gb2312)無關。

我之前錯誤的理解是:每套編碼都有自己的對應表。

現在看來,unicode標準囊括了世界上所有的字元,每個字元都有對應的unicode值。

我所謂的編碼,比如utf8, utf16, gb2312等等,其實只是在儲存到磁碟或者通過網路傳輸時,序列化成二進位制的方式而已,跟字元的unicode值毫無關係。

utf-32用4位元組儲存乙個字元,雖然浪費空間,但是從二進位制解析(decode)成字元的時候,速度肯定比utf8快,因為每四個位元組表示乙個字元,在乙個流中查詢特定位置的字元肯定要快, o(1)。

utf-8變長儲存,雖然節省了空間,但是查詢特定位置字元比較困難,時間效率是o(n)

從日文得到Unicode編碼的方法

前面說過,在將軟體改造成支援多國語言的時候,需要屬性檔案,而其中的編碼,如果是日文 中文 韓文等等,就要使用unicode編碼。所以下面舉個例子說明如何得到unicode編碼。1.在記事本中貼上原始的日文漢字。如果是手動輸入的話,也要用日文輸入法輸入。比如說我們輸入 2.將其另存為unicode編碼...

從日文得到Unicode編碼的方法

前面說過,在將軟體改造成支援多國語言的時候,需要屬性檔案,而其中的編碼,如果是日文 中文 韓文等等,就要使用unicode編碼。所以下面舉個例子說明如何得到unicode編碼。1.在記事本中貼上原始的日文漢字。如果是手動輸入的話,也要用日文輸入法輸入。比如說我們輸入 2.將其另存為unicode編碼...

python中的unicode編碼

概括 從python1.6開始就可以處理unicode字元了。一 幾種常見的編碼格式。1.1 ascii,用1個位元組表示。1.2 utf 8,用1個至三個位元組表示,表示ascii碼時只占用1個位元組,ascii編碼是utf 8的子集。1.3 utf 16,用2個位元組表示,在python中,un...