創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)公司專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、益陽網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為益陽等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。這篇文章主要介紹了Python字符串的示例分析,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
簡單地理解,字符串就是“一串字符”,也就是用引號(hào)內(nèi)的任何數(shù)據(jù),比如“Hello,Charlie”是一個(gè)字符串,“How are you?”也是一個(gè)字符串。
Python要求,字符串必須使用引號(hào)括起來,可以使用單引號(hào)或者雙引號(hào),只要成對(duì)即可。字符串中的內(nèi)容幾乎可以包含任何字符,英文字符也行,中文字符也行。
Python 3.x 對(duì)中文字符支持較好,但 Python 2.x 則要求在源程序中增加“#coding:utf-8”才能支持中文字符。
至于字符串是用單引號(hào)括起來,還是用雙引號(hào)括起來,在 Python 語言中,它們沒有任何區(qū)別。比如說:
str1 = 'c.biancheng.net' str2 = "C語言中文網(wǎng)" print(str1) print(str2)
但需要說明的是,Python 有時(shí)候沒有我們期望的那么聰明。如果字符串內(nèi)容本身包含了單引號(hào)或雙引號(hào),此時(shí)就需要進(jìn)行特殊處理:使用不同的引號(hào)將字符串括起來。對(duì)引號(hào)進(jìn)行轉(zhuǎn)義。
先看第一種處理方式。假如字符串內(nèi)容中包含了單引號(hào),則可以使用雙引號(hào)將字符串括起來。例如:
str3 = 'I'm a coder'
由于上面字符串中包含了單引號(hào),此時(shí) Python 會(huì)將字符串中的單引號(hào)與第一個(gè)單引號(hào)配對(duì),這樣就會(huì)把 'I' 當(dāng)成字符串,而后面的 m a coder' 就變成了多余的內(nèi)容,從而導(dǎo)致語法錯(cuò)誤。
為了避免這種問題,可以將上面代碼改為如下形式:
str3 = "I'm a coder"
上面代碼使用雙引號(hào)將字符串括起來,此時(shí) Python 就會(huì)把字符串中的單引號(hào)當(dāng)成字符串內(nèi)容,而不是和字符串開始的引號(hào)配對(duì)。
假如字符串內(nèi)容本身包含雙引號(hào),則可使用單引號(hào)將字有串括起來,例如如下代碼:
str4 = '"Spring is here,let us jam!", said woodchuck.'
接下來看第二種處理方式:使用轉(zhuǎn)義字符。Python 允許使用反斜線(\)將字符串中的特殊字符進(jìn)行轉(zhuǎn)義。假如字符串既包含單引號(hào),又包含雙引號(hào),此時(shí)就可以使用轉(zhuǎn)義字符,例如:
str5 = '"we are scared,Let\'s hide in the shade",says the bird'
通過使用轉(zhuǎn)義字符,向 Python 解釋器表明了此單引號(hào)并不是和最前面的單引號(hào)進(jìn)行配對(duì)的另一半,從而避免了發(fā)生語法錯(cuò)誤。
此外,Python 不是格式自由的語言,它對(duì)程序的換行、縮進(jìn)都有其規(guī)定的語法。Python 允許使用轉(zhuǎn)義字符(\)對(duì)換行符進(jìn)行轉(zhuǎn)義,轉(zhuǎn)義之后的換行符不會(huì)“中斷”字符串。例如:
s2 = 'The quick brown fox \ jumps over the lazy dog' print(s2)
上面 s2 字符串的內(nèi)容較長,故程序使用了轉(zhuǎn)義字符(\)對(duì)內(nèi)容進(jìn)行了轉(zhuǎn)義,這樣就可以把一個(gè)字符串寫成兩行。
同樣的,Python 的表達(dá)式也不允許隨便換行。但如果程序需要對(duì) Python 表達(dá)式換行,就需要使用轉(zhuǎn)義字符(\),例如:
num = 20 + 3 / 4 + \ 2 * 3 print(num)
Python長字符串
前面介紹 Python 多行注釋時(shí),提到使用三個(gè)引號(hào)(單引號(hào)、雙引號(hào)都行)來包含多行注釋內(nèi)容,其實(shí)這是長字符串的寫法,只是由于在長字符串中可以放置任何內(nèi)容,包括放置單引號(hào)、雙引號(hào)都可以,如果所定義的長字符串沒有賦值給任何變量,那么這個(gè)字符串就相當(dāng)于被解釋器忽略了,也就相當(dāng)于注釋掉了。
實(shí)際上,使用三個(gè)引號(hào)括起來的長字符串完全可以賦值給變量,例如如下程序:
s = '''"Let's go fishing", said Mary. "OK, Let's go", said her brother. they walked to a lake''' print(s)
上面程序使用三個(gè)引號(hào)定義了長字符串,該長字符串中既可包含單引號(hào),也可包含雙引號(hào)。
當(dāng)程序中有大段文本內(nèi)容要定義成字符串時(shí),優(yōu)先推薦使用長字符串形式,因?yàn)檫@種形式非常強(qiáng)大,可以讓字符串中包含任何內(nèi)容,既可包含單引號(hào),也可包含雙引號(hào)。
Python原始字符串
由于字符串中的反斜線都有特殊的作用,因此當(dāng)字符串中包含反斜線時(shí),就需要使用轉(zhuǎn)義字符 \ 對(duì)字符串中包含的每個(gè) '\' 進(jìn)行轉(zhuǎn)義。
比如說,我們要寫一個(gè)關(guān)于 Windows 路徑 G:\publish\codes\02\2.4 這樣的字符串,如果在 Python 程序中直接這樣寫肯定是不行的,需要使用 \ 轉(zhuǎn)義字符,對(duì)字符串中每個(gè) '\' 進(jìn)行轉(zhuǎn)義,即寫成 G:\\publish\\codes\\02\\2.4 這種形式才行。
有沒有覺得這種寫法很啰嗦,有沒有更好的解決辦法呢?答案是肯定的,借助于原始字符串可以很好地解決這個(gè)問題。
原始字符串以“r”開頭,它不會(huì)把反斜線當(dāng)成特殊字符。因此,上面的 Windows 路徑可直接寫成如下這種形式:
s1 = r'G:\publish\codes\02\2.4' print(s1)
如果原始字符串中包含引號(hào),程序同樣需要對(duì)引號(hào)進(jìn)行轉(zhuǎn)義(否則 Python 同樣無法對(duì)字符串的引號(hào)精確配對(duì)),但此時(shí)用于轉(zhuǎn)義的反斜線會(huì)變成字符串的一部分。
例如如下代碼:
# 原始字符串包含的引號(hào),同樣需要轉(zhuǎn)義
s2 = r'"Let\'s go", said Charlie' print(s2)
上面代碼會(huì)生成如下輸出結(jié)果:
"Let\'s go", said Charlie
由于原始字符串中的反斜線會(huì)對(duì)引號(hào)進(jìn)行轉(zhuǎn)義,因此原始字符串的結(jié)尾處不能是反斜線,否則字符串結(jié)尾處的引號(hào)會(huì)被轉(zhuǎn)義,導(dǎo)致字符串不能正確結(jié)束。
如果確實(shí)要在原始字符串的結(jié)尾處添加反斜線怎么辦呢?一種方式是不要使用原始字符串,而是改為使用長字符串寫法(三引號(hào)字符串);另一種方式就是將反斜線單獨(dú)寫。
例如如下代碼:
s3 = r'Good Morning' '\\' print(s3)
上面代碼開始寫了一個(gè)原始字符串 r'Good Morning',緊接著程序使用 '\\' 寫了一個(gè)包含反斜線的字符串,Python 會(huì)自動(dòng)將這兩個(gè)字符串拼接在一起。運(yùn)行上面代碼會(huì)生成如下輸出結(jié)果:
Good Morning\
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享Python字符串的示例分析內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
網(wǎng)頁題目:Python字符串的示例分析-創(chuàng)新互聯(lián)
標(biāo)題URL:http://www.rwnh.cn/article8/ccship.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、ChatGPT、域名注冊(cè)、響應(yīng)式網(wǎng)站、面包屑導(dǎo)航、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容