教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

python轉(zhuǎn)義字符的作用和用法

更新時(shí)間:2022年10月13日11時(shí)14分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

在python中,不管使用單引號(hào)還是使用雙引號(hào)包含,使用print輸出字符串的時(shí)候,值都是一樣的。至于為什么兩種情況都可以表示字符串,是因?yàn)槟承┣闆r下它們會(huì)派上用場,例如下面的代碼:

print("let's go!")
print('"Nice to meet you ! "he said')
運(yùn)行代碼,結(jié)果如下所示:
let's go!
"Nice to meet you! "he said
上面的代碼中,第1行代碼的字符串內(nèi)容中有單引號(hào),所以要使用雙引號(hào)包含。而第2行代碼的字符串內(nèi)容中有雙引號(hào),所以要使用單引號(hào)包含。如果不這么做,當(dāng)解釋器在根據(jù)單引號(hào)或者雙引號(hào)辨別字符串的結(jié)束符時(shí),難免會(huì)發(fā)生錯(cuò)誤。例如,下面的代碼就會(huì)報(bào)錯(cuò):
 print('let's go! go')
運(yùn)行代碼,結(jié)果如下所示:
  File "<input>", line 1
    print('let's go! go')
               ^
SyntaxError: invalid syntax
當(dāng)然,對于單引號(hào)或者雙引號(hào)這些特殊的符號(hào),我們可以對它們進(jìn)行轉(zhuǎn)義,例如,對字符串中的單引號(hào)進(jìn)行轉(zhuǎn)義,示例代碼如下:
 print('let\'s go! go')
運(yùn)行代碼,結(jié)果如下所示:
let's go! go
上述代碼中,使用斜線的方式,對單引號(hào)進(jìn)行了轉(zhuǎn)義,這樣當(dāng)解釋器遇到這個(gè)轉(zhuǎn)義字符的時(shí)候,會(huì)明白這不是字符串的結(jié)束標(biāo)記。而像這樣的轉(zhuǎn)義符號(hào)有很多種,接下來,通過一張表來列舉,如表1所示。

表1 轉(zhuǎn)義字符號(hào)

轉(zhuǎn)義字符 代表含義
\(在行尾時(shí))                            反斜杠符號(hào)                                                                     
\ 反斜杠符號(hào)
\" 雙引號(hào)
\b 退格(Backspace)
\e 轉(zhuǎn)義
\000
\n 換行
\v 縱向制表符
\t 橫向制表符
\r 回車
\f 換頁
\oyy 八進(jìn)制數(shù),yy代表的字符,例如:\o12代表換行
\xyy 十六進(jìn)制數(shù),yy代表的字符,例如:\x0a代表換行
\other 其他的字符以普通格式輸出

當(dāng)然,如果你不想使用反斜杠(\)轉(zhuǎn)義特殊字符,可以在字符串前面添加一個(gè)r,表示原始字符串,示例代碼如下:
 print('E\nglish')
運(yùn)行代碼,結(jié)果如下所示:
E
glish
添加原始字符串r,具體代碼如下所示:
print(r'E\nglish')
運(yùn)行代碼,結(jié)果如下所示:
E\nglish
0 分享到:
和我們在線交談!