1. 程式人生 > >python字串字首u,r,b的區別

python字串字首u,r,b的區別

字首u:

以字首u開頭的Python字串表示該字串為unicode編碼(unicode為python interpreter內部統一的編碼格式)。

python3中,字串的儲存方式都是以Unicode字元來儲存的,所以字首帶不帶u,其實都一樣。

字首r:

以r或R開頭的python中的字串表示該字串為非轉義的原始字串,即字串中預設都是普通字元,沒有轉義字元。

如:

s = 'ABC\\-001'中,\\為轉義字元,實際為\

s = r'ABC\\-001'中,\\被認為是普通字元,就是\\

以r開頭的字元,常用於正則表示式,對應著re模組。

字首b:

字首b開頭的Python字串代表是bytes型別的字串。

這類字串中的字元必須是十六進位制數,或者ASCII字元。

注意:

python3.x裡預設的str是unicode編碼, b字首代表的就是bytes 。

python2.x裡b字首沒什麼具體意義, 只是為了相容python3.x的這種寫法。