<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中文全攻略

    Posted on 2008-01-20 15:37 pts 閱讀(520) 評論(0)  編輯  收藏 所屬分類: Python
     轉自| 2007-10-16 10:54:29

    1.        在Python中使用中文
    在Python中有兩種默認的字符串:str和unicode。在Python中一定要注意區分“Unicode字符串”和“unicode對象”的區別。后面所有的“unicode字符串”指的都是python里的“unicode對象”。
    事實上在Python中并沒有“Unicode字符串”這樣的東西,只有“unicode”對象。一個傳統意義上的unicode字符串完全可以用str對象表示。只是這時候它僅僅是一個字節流,除非解碼為unicode對象,沒有任何實際的意義。
    我們用“哈哈”在多個平臺上測試,其中“哈”對應的不同編碼是:
    1.              UNICODE (UTF8-16),      C854
    2.              UTF-8,                    E59388
    3.              GBK,               B9FE
    1.1     Windows控制臺
    下面是在windows控制臺的運行結果:
    可以看出在控制臺,中文字符的編碼是GBK而不是UTF-16。將字符串s(GBK編碼)使用decode進行解碼后,可以得到同等的unicode對象。
    注意:可以在控制臺打印ss并不代表它可以直接被序列化,比如:

    向文件直接輸出ss會拋出同樣的異常。在處理unicode中文字符串的時候,必須首先對它調用encode函數,轉換成其它編碼輸出。這一點對各個環境都一樣。

    總結:在Python中,“str”對象就是一個字節數組,至于里面的內容是不是一個合法的字符串,以及這個字符串采用什么編碼(gbk, utf-8, unicode)都不重要。這些內容需要用戶自己記錄和判斷。這些的限制也同樣適用于“unicode”對象。要記住“unicode”對象中的內容可絕對不一定就是合法的unicode字符串,我們很快就會看到這種情況。
    總結:在windows的控制臺上,支持gbk編碼的str對象和unicode編碼的unicode對象。
    1.2     Windows IDLE(在Shell上運行)
    在windows下的IDLE中,運行效果和windows控制臺不完全一致:
    可以看出,對于不使用“u”作標識的字符串,IDLE把其中的中文字符進行GBK編碼。但是對于使用“u”的unicode字符串,IDLE居然一樣是用了GBK編碼,不同的是,這時候每一個字符都是unicode(對象)字符!!此時len(ss) = 4。
    這樣產生了一個神奇的問題,現在的ss無法在IDLE中正常顯示。而且我也沒有辦法把ss轉換成正常的編碼!比如采用下面的方法:
    這有可能是因為IDLE本地化做得不夠好,對中文的支持有問題。建議在IDLE的SHELL中,不要使用u“中文“


    Powered by ScribeFire.

    主站蜘蛛池模板: 亚洲精品福利网泷泽萝拉| 国产亚洲欧美在线观看| 在线不卡免费视频| 国产精品免费在线播放| 亚洲美女视频一区二区三区| 日韩在线免费看网站| 99久久成人国产精品免费| 亚洲综合久久1区2区3区| 免费一级一片一毛片| 久久国产乱子免费精品| 亚洲狠狠色丁香婷婷综合| 亚洲人成伊人成综合网久久久| 亚洲精品动漫免费二区| 久久久受www免费人成| 中文字幕亚洲码在线| 亚洲国产精品无码久久SM| 日韩成人免费视频播放| 免费无码一区二区三区| 一级毛片在线完整免费观看| 亚洲av乱码一区二区三区香蕉| 国产AV无码专区亚洲AV手机麻豆| 一二三四在线播放免费观看中文版视频| 牛牛在线精品观看免费正| 亚洲一级片在线观看| 国产成A人亚洲精V品无码 | 美女视频黄a视频全免费| 一个人看的www在线免费视频| 亚洲av乱码一区二区三区香蕉 | 亚洲特级aaaaaa毛片| 亚洲一区AV无码少妇电影☆| 99视频在线精品免费观看6| 免费一区二区三区| 无码人妻一区二区三区免费视频| 91丁香亚洲综合社区| 久久亚洲精品无码AV红樱桃| 国产亚洲成人在线播放va| 国产精品极品美女免费观看 | 成人爽A毛片免费看| 四虎国产精品永久免费网址| 99精品免费视品| aa级女人大片喷水视频免费|