- 1、python字元串前綴 u和r的區別
- 2、如何去掉Python控制台列印字元串帶的’u’
- 3、如何用python將多行unicode字元串前的u移除
- 4、python 轉義符號\u
- 5、python遇到『\u』開頭的unicode編碼
以r或R開頭的python中的字元串表示(非轉義的)原始字元串
python裡面的字元,如果開頭處有個r,比如:
(r』^time/plus/\d{1,2}/$』, hours_ahead)
說明字元串r”XXX”中的XXX是普通字元。有普通字元相比,其他相對特殊的字元,其中可能包含轉義字元,即那些,反斜杠加上對應字母,表示對應的特殊含義的,比如最常見的」\n”表示換行,”\t”表示Tab等。
而如果是以r開頭,那麼說明後面的字元,都是普通的字元了,即如果是「\n」那麼表示一個反斜杠字元,一個字母n,而不是表示換行了。以r開頭的字元,常用於正則表達式,對應著re模塊。
以u或U開頭的字元串表示unicode字元串
Unicode是書寫國際文本的標準方法。如果你想要用非英語寫文本,那麼你需要有一個支持Unicode的編輯器。類似地,Python允許你處理Unicode文本——你只需要在字元串前加上前綴u或U。
停止使用python2.x,安裝python3.x 你的問題就解決了。2系列的版本對非英文字元的處理真的好頭疼。
要知道triple string就是string,由許多characters組合而成,比如[u’123’]在a里已經沒有列表的含義了,就是「[」, 「u」, 「’」, 「1」, 「2」, 「3」, 「’」, 「]」這些字元的組合
在’\\uff08397\\u7b49\\u7ea7’前加上r,即:
r’\\uff08397\\u7b49\\u7ea7′
這樣就取消轉義了。這在Python叫做自然字元串。
例如:
print(r’\\uff08397\\u7b49\\u7ea7′)
輸出:
\\uff08397\\u7b49\\u7ea7
在《簡明Python教程》中有這麼一句:
「
自然字元串
如果你想要指示某些不需要如轉義符那樣的特別處理的字元串,那麼你需要指定一個自
然字元串。
」
web信息中常會遇到「\u4f60\u597d」類型的字元。首先』\u『開頭就基本表明是跟unicode編碼相關的,「\u」後的16進位字元串是相應漢字的utf-16編碼。python里decode()和encode()為我們提供了解碼和編碼的方法。其中decode(‘unicode_escape’)能將此種字元串解碼為unicode字元串。
比如:
有篇講python編碼的文章比較好,
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126140.html