一篇文章搞懂python的轉(zhuǎn)義字符及用法
什么是轉(zhuǎn)義字符
轉(zhuǎn)義字符是一個(gè)計(jì)算機(jī)專業(yè)詞匯。在計(jì)算機(jī)當(dāng)中,我們可以寫出123 ,也可以寫出字母abcd,但有些字符我們無法手動(dòng)書寫,比如我們需要對字符進(jìn)行換行處理,但不能寫出來換行符,當(dāng)然我們也看不見換行符。像這種情況,我們需要在字符中使用特殊字符時(shí),就需要用到轉(zhuǎn)義字符,在python里用反斜杠轉(zhuǎn)義字符。
在交互式解釋器中,輸出的字符串用引號(hào)引起來,特殊字符用反斜杠轉(zhuǎn)義。雖然可能和輸入看上去不太一樣,但是兩個(gè)字符串是相等的。
在python里,轉(zhuǎn)義字符可以轉(zhuǎn)義很多字符,比如n表示換行,t表示制表符,具體都有哪些轉(zhuǎn)義字符呢,見下表
python當(dāng)中,我們定義一個(gè)字符串。可以用單引號(hào) ‘…’ 或雙引號(hào) “…” 標(biāo)識(shí) 。比如s = ‘a(chǎn)bcd’,或者s = “abcd”,如果我們想在這樣的字符串里再寫一個(gè)單引號(hào)呢?比如it’s me
>>> s = ’it’s me’>>> s File '<ipython-input-34-9e8af72c0f6d>', line 1 s = ’it’s me’ ^SyntaxError: invalid syntax
如果這樣實(shí)現(xiàn),編輯器就會(huì)報(bào)錯(cuò),因?yàn)檫@個(gè)字符串是用單引號(hào)括起來的,若果中間又出現(xiàn)一個(gè)單引號(hào),到底三個(gè)單引號(hào)中哪兩個(gè)單引號(hào)構(gòu)成一個(gè)字符串呢?這里面就出現(xiàn)了歧義,而計(jì)算機(jī)最怕的就是歧義。為了解決這種情況,我們就需要用到轉(zhuǎn)義字符了。
上述語句加上轉(zhuǎn)義字符就是
>>> s = ’it’s me’>>> s'it’s me'
上述是單引號(hào),雙引號(hào)同理:
>>> s = '使用'創(chuàng)建字符串'>>> s’使用'創(chuàng)建字符串’
當(dāng)然有些情況下不用轉(zhuǎn)義字符也可以實(shí)現(xiàn)我們的需求,比如字符串中只有單引號(hào)而沒有雙引號(hào),就用雙引號(hào)引用,否則用單引號(hào)引用。舉例如下:
>>> s = 'it’s me'>>> s'it’s me'>>> s = ’使用'創(chuàng)建字符串’>>> s’使用'創(chuàng)建字符串’
但還是推薦使用轉(zhuǎn)義字符,轉(zhuǎn)義字符更具有通用性,也不需要我們?nèi)ヅ袛嘧址惺欠裰挥袉我?hào)或者雙引號(hào)。
另外print() 函數(shù)會(huì)生成可讀性更好的輸出, 它會(huì)省去引號(hào)并且打印出轉(zhuǎn)義后的特殊字符。見下邊:
>>> s = ’'Isn’t a student.' she said.’>>> s’'Isn’t a student.' she said.’>>> print(s)'Isn’t a student.' she said.>>> s = ’First line.nSecond line.’ # n means newline>>> s # without print(), n is included in the output’First line.nSecond line.’>>> print(s) # with print(), n produces a new lineFirst line.Second line.
如果要在字符串里使用 ,即使得字符串中的用作普通字符,那么就需要字符本身也要轉(zhuǎn)義,我們用表示,表示的字符就是
>>> s = '換行符是n。'>>> print(s)換行符是n。
如果字符串里面有很多字符都需要轉(zhuǎn)義,就需要加很多,為了簡化,Python還允許在字符串前加r,表示內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義,見下邊:
>>> s = r'換行符是n。'>>> print(s)換行符是n。
到此這篇關(guān)于一篇文章搞懂python的轉(zhuǎn)義字符及用法的文章就介紹到這了,更多相關(guān)python 轉(zhuǎn)義字符內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Java使用Tesseract-Ocr識(shí)別數(shù)字2. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼3. vue實(shí)現(xiàn)web在線聊天功能4. 基于vue 動(dòng)態(tài)菜單 刷新空白問題的解決5. 解決Android Studio 格式化 Format代碼快捷鍵問題6. python如何換行輸出7. Android打包篇:Android Studio將代碼打包成jar包教程8. SpringBoot+TestNG單元測試的實(shí)現(xiàn)9. python如何計(jì)算圓的面積10. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題
