python中中文編碼問題

2021-06-09 05:52:58 字數 1027 閱讀 1084

**

編碼問題一直是很頭痛的問題:

當字串是:'\u4e2d\u56fd'

>>>s=['\u4e2d\u56fd','\u6e05\u534e\u5927\u5b66']

>>>str=s[0].decode('unicode_escape')  #.encode("euc_kr")

>>>print str

中國當字串是:' 東亞學團一中'

>>>print unichr(19996)

ord()支援unicode,可以顯示特定字元的unicode號碼,如:

>>>print ord('a')

65

只要和unicode連線,就會產生unicode字串。如:

>>> 'help'

'help'

>>> 'help,' + u'python'

u'help,python'

對於ascii(7位)相容的字串,可和內建的str()函式把unicode字串轉換成ascii字串。如:

>>> str(u'hello world')

'hello world'

對幾個概念的理解:

ascii碼:    用資料字 對應 相應的字元

而中文 就是區位碼對應漢字    如:「好」 的ascii碼為: 22909

unicode 編碼 每個國家分一塊。   它有utf-8、utf-16、utf-32等形式

中文範圍 4e00-9fbf:  這個範圍內有 gbk,gb2312,

utf-8是基於unicode的 國際化的場合適合使用 

gb2312和gb2312都是國標碼 出現的較早 主要用於編譯碼常用漢字

python中文編碼問題

在 python 中對中文進行處理的時候,往往涉及到編碼轉換的問題,通常使用以下三種編碼格式 utf 8 gbkunicode 國內用的比較多的是 gbk格式,unicode 是乙個很好的編碼方案,將世界各國的語言進行了統一的編碼,美國人後來覺得自己吃了大虧,於是又搞了一種變長編碼的 utf 8 的...

python中文編碼問題

為什麼會報錯 unicodeencodeerror ascii codec can t encode characters in position 0 1 ordinal not in range 128 本文就來研究一下這個問題。字串在python內部的表示是unicode 編碼,因此,在做編碼轉...

python中文編碼問題

一道非常簡單的python小題,可要搞死我了 題目 輸入某年某月某日,判斷這一天是這一年的第幾天?這題很簡單,但我想要的是這樣的效果 輸入 1月1 輸出 1 也就是說,需要 原本的 片段 a raw input b 月 c a.index b 就是輸入一行字串,找到 月 在哪,然後切割成兩部分 根據...