Python命令行代碼強(qiáng)化記憶寶典
Python命令行是應(yīng)用很廣泛,我們?cè)谑褂玫臅r(shí)候有很多的困難存在,下面我們就來詳細(xì)的看看如何進(jìn)行這些問題的排除。希望大家在之后的使用中有所幫助。
初學(xué)Python命令行,遇到很多編碼問題,記下來以免將來又忘了,很多東西不懂,都是屬于不求甚解,亂下結(jié)論,但想到拿出來可以有熱心同學(xué)指出錯(cuò)誤所在,便厚起臉皮了……
首先需要了解Python中有兩種字符串(嚴(yán)格地說,似乎不能這么叫)。一種是普通的str對(duì)象(每個(gè)字符用8bits表示),另一種是unicode字符串,它們可以相互轉(zhuǎn)換。
首先打開pyshell,輸入一段代碼。
python 代碼
- >>> a = "我"
- >>> b = unicode(a,"gb2312")
- >>> a.__class__
- <type 'str'>
- >>> b.__class__
- <type 'unicode'>
- >>>
看出來了吧,兩種字符串。再來
python 代碼
- >>> a
- '\xce\xd2'
- >>> b
- u'\u6211'
變量a是兩個(gè)字符,b是一個(gè)unicode字符。關(guān)于這兩種字符串,Python文檔-->LanguageReference-->DataModel-->The standard type hierarchy-->Sequences,有一些Strings,Unicode的描述。至于
python命令行 代碼
- >>> z = u"我"
- >>> #這種代碼,其實(shí)什么都不是。
- >>> z.__class__
- <type 'unicode'>
- >>> z
- u'\xce\xd2'
看到了吧,這個(gè)奇怪的東西......后來在WindowsXP、純python命令行下試過,得出的結(jié)論不同,z的結(jié)果變成了u'\u6211',這里完全不應(yīng)該在pyshell下作試驗(yàn)的,看來還有很多問題尚未理解清楚
【編輯推薦】