一篇文章搞懂python的轉(zhuǎn)義字符及用法
什么是轉(zhuǎn)義字符
轉(zhuǎn)義字符是一個(gè)計(jì)算機(jī)專業(yè)詞匯。在計(jì)算機(jī)當(dāng)中,我們可以寫出123 ,也可以寫出字母abcd,但有些字符我們無(wú)法手動(dòng)書寫,比如我們需要對(duì)字符進(jìn)行換行處理,但不能寫出來(lái)?yè)Q行符,當(dāng)然我們也看不見(jiàn)換行符。像這種情況,我們需要在字符中使用特殊字符時(shí),就需要用到轉(zhuǎn)義字符,在python里用反斜杠轉(zhuǎn)義字符。
在交互式解釋器中,輸出的字符串用引號(hào)引起來(lái),特殊字符用反斜杠轉(zhuǎn)義。雖然可能和輸入看上去不太一樣,但是兩個(gè)字符串是相等的。
在python里,轉(zhuǎn)義字符可以轉(zhuǎn)義很多字符,比如n表示換行,t表示制表符,具體都有哪些轉(zhuǎn)義字符呢,見(jià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)括起來(lái)的,若果中間又出現(xiàn)一個(gè)單引號(hào),到底三個(gè)單引號(hào)中哪兩個(gè)單引號(hào)構(gòu)成一個(gè)字符串呢?這里面就出現(xiàn)了歧義,而計(jì)算機(jī)最怕的就是歧義。為了解決這種情況,我們就需要用到轉(zhuǎn)義字符了。
上述語(yǔ)句加上轉(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)而沒(méi)有雙引號(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)義后的特殊字符。見(jià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)義,就需要加很多,為了簡(jiǎn)化,Python還允許在字符串前加r,表示內(nèi)部的字符串默認(rèn)不轉(zhuǎn)義,見(jiàn)下邊:
>>> s = r'換行符是n。'>>> print(s)換行符是n。
到此這篇關(guān)于一篇文章搞懂python的轉(zhuǎn)義字符及用法的文章就介紹到這了,更多相關(guān)python 轉(zhuǎn)義字符內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向2. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明3. CSS hack用法案例詳解4. PHP設(shè)計(jì)模式中工廠模式深入詳解5. 用css截取字符的幾種方法詳解(css排版隱藏溢出文本)6. ASP+ajax實(shí)現(xiàn)頂一下、踩一下同支持與反對(duì)的實(shí)現(xiàn)代碼7. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法8. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過(guò)程(親測(cè)可用)9. asp中response.write("中文")或者js中文亂碼問(wèn)題10. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析
