中文,真是中國人的痛啊(在程式設計方面),在python的世界了,也是如此。
這裡簡單記錄一下這兩天的"痛「,以免忘記(好像是人的天性),同時如果有類似的,也可以作為參考。
簡單說一下,目前對python的串的了解。str和unicode是完全不一樣的東西,從名字就可以看出,呵呵,不過他們都是從basestring而來,所有有相同的一些行為,如果要判斷是string的話,應該使用isinstance(obj,basestring).
一般來說str是跟環境有很大關係的,比如你的作業系統編碼,終端/命令列所支援的編碼等等。出現」unicodeencodeerror: 'ascii' codec can't encode characters in position" 這樣的異常,多數是跟str相關的。unicode在這方面,表現很好。
str和unicode的轉換,也是老掉牙的encode/decode。
[list]
[*]str->unicode is decode
[*]unicode->str is encode
[/list]
我碰到的問題是,收到乙個帶有utf8編碼的unicode,但是我現在需要將其unicode的內容原封不動的轉成str,這樣我就可以在str使用utf8的編碼操作了。非常簡單的操作,.encode('iso-8859-1')就可以了。
Python字串編碼
在python中有些特殊的地方是存在兩種字串,分別為str和unicode字串,他們都繼承自basestring。如 s hello world s為str us u hello world us為unicode。使用help str 和help unicode 可以檢視各自說明,他們都有decod...
python字串編碼
常見字元編碼型別 ascii 美國資訊交換標準碼,是目前計算機中最廣泛使用的字符集編碼。每個 ascii 碼以 1 個位元組 儲存,例如數字字元 0 的 ascii 碼是 0110000,十進位制表示為 48。unicode 為解決世界上上百種語言帶來混合 衝突,各國有各國的標準,顯示很容易出現亂碼...
Python字串 編碼
字串str 作用 用來記錄文字資訊 字面值表示方法 用引號括起來的部分都是字串 單引號 雙引號 三單引號 三雙引號 空字串 字串的字面值表示方式 hello hello hello hello 單引號和雙引號的區別 單引號內的雙引號不算結束符 雙引號內的單引號不算結束符 三引號的作用 三引號內可以包...