git
既然如此,爲什麼同時支持單引號和雙引號呢?由於你可能遇到以下狀況:api
這裏就體現出單雙引號的做用,若是隻使用單引號或者雙引號,在執行如上其中一種狀況的時候,解釋器就會報錯。ide
除了單引號和雙引號,三引號也是一個很是好用的定義方法,它的用法和三引號註釋是相同的,也是能夠支持將多行擴起,單引號和雙引號只能定義在同一行內。函數
字符串既是一個類型也是一個方法,str()就是一個工廠函數,它會把括號內的值轉化成字符串,可是這個轉化過程也不是什麼都無腦轉化,它遵循了字符串的一些方法。好比str()會自動識別字符串中的單引號或者雙引號,以做爲字符串結束的標誌,而當str()找到換行符和製表符以後,也不會按照原樣將它們輸出。編碼
好比說你想讓解釋器輸出s\nb,小牛逼,而後str()識別到"\n"就做爲換行符輸出了,結果就變成了傻逼。。。通常狀況下把\n做爲換行符代替回車鍵是很方便的,可是當你真的想讓解釋器打出'\n'的時候就要用到特殊的方法了。spa
反斜槓是讓斜槓後面的一個可讓str()啓動神祕功能的特殊字符失去特殊做用,變成通常的字符。它遵循從左到右的運算順序。好比說我在"\n"前面加上反斜槓,"\n"也就不做爲換行符被str()執行換行操做了,它會變成通常字符"\n"輸出。3d
值得注意的是,反斜槓出如今特殊字符前面會隱形,而出如今通常字符的前面會做爲普通的字符輸出。code
想要輸出兩個\的話,由於\自己也是特殊字符,因此"\\"的前面一個反斜槓會把後面的反斜槓做爲特殊符號轉義成通常符號,它本身則在輸出的時候隱形了,若是想要輸出兩個反斜槓的話,要打三個或者四個反斜槓。orm
通常使用反斜槓讓製表符、換行符、反斜槓本身、單雙引號的魔法失靈,從而做爲普通字符來輸出它們。blog
原始字符串就是告訴計算機,一切開始簡單粗暴,我輸入什麼,就給我輸出什麼,可是要注意不要以反斜槓結尾,由於反斜槓會讓最後一個引號失去標記結尾的做用,致使str()沒法識別結尾,以致於報錯。
1.按索引取值
>>> s='string' >>> s[0] 's' >>> s[1] 't' >>> s[-1] 'g'
-1是最後一位,索引支持從後往前取值。
2.切片
>>> s='string' >>> s[1:3] 'tr' >>> s[3:1:-1] 'ir'
切片是顧頭不顧尾的,也就是取不到結尾索引的位置。永遠在結尾索引的前一位就截止了。
切片最後一個參數是步長,能夠爲正也能夠爲負。
3.長度len
字符串元素的個數。
4.成員運算in和not in
判斷一個子字符串是否存在於大字符串中
5.移除空白strip: 用來去除字符串左右兩邊的字符,不指定默認去除的是空格
>>> s=' string ' >>> s.strip() 'string' >>> s=' ***string*** ' >>> s.strip('*') ' ***string*** ' # 當指定字符時,則不清楚空格\換行符,只清楚指定的字符。
6.切分split:針對有規律的字符串,按照某種分隔符切成列表
>>> s='a|b|c|d|e|f|g' >>> s.split('|') ['a', 'b', 'c', 'd', 'e', 'f', 'g']
7.join:列表拼接成字符串
>>> '_'.join(['a', 'b', 'c', 'd', 'e', 'f', 'g']) 'a_b_c_d_e_f_g'
8.lower,upper大小寫轉化
>>> 'ABC'.lower() 'abc' >>> 'abc'.upper() 'ABC'
9.startswith,endswith 斷定字符串開頭和結尾是不是某個子字符串
>>> 'abcaaaaa'.startswith('abc') True >>> 'abcaaaaa'.endswith('a') True
10.format的三種玩法
1.按位傳參
2.關鍵字傳參
3.按索引傳參
11.replace(old,new)
Return a copy with all occurrences of substring old replaced by new.
12.isdigit等數字判別
isdigit 斷定一個字符串是不是純阿拉伯數字,可斷定Unicode和Bytes編碼
isdecimal 斷定Unicode編碼的阿拉伯數字
isnumberic 斷定中文、羅馬、阿拉伯數字
13.find 輸出子字符串在字符串中第一個索引
>>> '123456'.find('56') 4
14.center,ljust,rjust,zfill 填充
15.captalize,swapcase,title
>>> 'abcdef dddddd'.capitalize() # 句首字母大寫 'Abcdef dddddd' >>> 'abcAef dddddd'.swapcase() # 大小寫反轉 'ABCaEF DDDDDD' >>> 'abcAef dddddd'.title() #單詞首字母大寫 'Abcaef Dddddd'