<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    海上月明

    editer by sun
    posts - 162, comments - 51, trackbacks - 0, articles - 8
       :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

    [轉]Python的ASCII, GB2312, Unicode , UTF-8

    Posted on 2008-01-20 14:54 pts 閱讀(25724) 評論(1)  編輯  收藏 所屬分類: Python
    李李 - 網易博客
    Python的ASCII, GB2312, Unicode , UTF-8
    ASCII 是一種字符集,包括大小寫的英文字母、數字、控制字符等,它用一個字節表示,范圍是 0-127 Unicode分為UTF-8和UTF-16。
    UTF-8變長度的,最多 6 個字節,小于 127 的字符用一個字節表示,與 ASCII 字符集的結果一樣,ASCII 編碼下的英語文本不需要修改就可以當作 UTF-8 編碼進行處理。
    Python 從 2.2 開始支持 Unicode ,函數 decode( char_set )可以實現 其它編碼到 Unicode 的轉換,函數 encode( char_set )實現 Unicode 到其它編碼方式的轉換。
    比如
    ("你好").decode( "GB2312")

    將得到
    u'\u4f60\u597d',

    即 "你"和“好"的 Unicode 碼分別是 0x4f60 和 0x597d

    再用
    (u'\u4f60\u597d').encode("UTF-8")

    將得到
    '\xe4\xbd\xa0\xe5\xa5\xbd'

    它是 “你好”的UTF-8編碼結果。

    python中使用 unicode的關鍵:unicode是一個類,函數unicode(str,"utf8")從utf8編碼(當然也可以是別的編碼)的字符串str生成 unicode類的對象,而函數unc.encode("utf8")將unicode類的對象unc轉換為(編碼為)utf8編碼(當然也可以是別的編碼)的字符串。于是,編寫unicode相關程序,需要做的事情是 * 獲取數據(字符串)時,用unicode(str, "utf8")生成unicode對象 * 在程序中僅使用unicode對象,對程序中出現的字符串常量都以u"字符串"的形式書寫 * 輸出時,可將unicode對象轉換為任意編碼輸出,使用str.encode("some_encoding")

    >>> unicode("你好", "utf8")
           u'\u4f60\u597d'

    >>> x = _

    >>> type(x)

    >>> type("你好")

    >>> x.encode("utf8")
           '\xe4\xbd\xa0\xe5\xa5\xbd'

    >>> x.encode("gbk")
           '\xc4\xe3\xba\xc3'

    >>> x.encode("gb2312")
           '\xc4\xe3\xba\xc3'

    >>> print x
           你好

    >>> print x.encode("utf8")
           你好

    >>> print x.encode("gbk")
           ???

    以上是測試結果(Ubuntu 6.06,locale為utf8),注意type(x)和type("你好")的區別。從編碼上可以看出utf8編碼與gbk不同。在utf8的 locale設置下,打印x按該環境變量編碼(我猜我猜我猜猜猜),而打印x.encode("gbk")則是亂碼。

    Powered by ScribeFire.


    評論

    # re: [轉]Python的ASCII, GB2312, Unicode , UTF-8  回復  更多評論   

    2011-09-17 15:41 by faicker
    錯誤
    主站蜘蛛池模板: 在线精品免费视频无码的| 免费无码又爽又刺激网站直播| 黄色网址免费大全| 亚洲国产天堂在线观看| 99精品一区二区免费视频| 亚洲∧v久久久无码精品| 四虎影视成人永久免费观看视频| 亚洲AV综合色区无码一区 | 四虎永久在线精品免费一区二区| 日韩在线视频免费看| 日本亚洲欧美色视频在线播放 | 日韩亚洲精品福利| 视频免费1区二区三区| 国产自偷亚洲精品页65页| 成人免费ā片在线观看| 久久精品国产亚洲av成人| 亚洲免费观看网站| 国产成人精品日本亚洲专一区| 成全视频免费高清 | 亚洲AV福利天堂一区二区三| 99在线免费观看视频| 亚洲国产一区在线观看| 手机看片久久国产免费| 一级片在线免费看| 久久久影院亚洲精品| 国产精品久久免费| 免费无码午夜福利片| 亚洲日韩中文无码久久| 91免费国产自产地址入| 亚洲精品伦理熟女国产一区二区| 免费国产综合视频在线看| 日韩电影免费在线观看| 亚洲va久久久久| 亚洲成a人片在线观看日本麻豆| 色www永久免费网站| 亚洲中文久久精品无码1| 亚洲av区一区二区三| 免费无码又爽又刺激高潮视频| 亚洲精品天堂成人片AV在线播放 | 久久综合久久综合亚洲| 国产成人亚洲影院在线观看|