Python的字符串被劃分為不可變序列的類別,意味著這些字符串所包含的字符存在從左至右的位置順序,并且它們不可以在本地進行修改。
基本操作
字符串可以通過+操作符進行合并,可以使用*運算符進行重復。
?
>>>len("abc")
3
>>>'abc'+'def'
'abcdef'
>>>'NI!'*4
'NI!NI!NI!NI!'
字符串內部的一個反斜杠“\”可允許把字符串放于多行。
?
>>>str = "aaa\
....bbb\
....ccc\
....ddd"
>>>str
aaabbbcccddd
索引和分片
在Python中,字符串中的字符是通過索引提取的。
分片X[I:J],表示“取出在X中從偏移量為I,直到但不包括偏移量為J的內容”。結果就是返回一個新的對象。
在一個分片中,左邊界默認為0,右邊界默認為分片序列的長度。
?
S = 'Spam'
>>>S[1:]
'pam'
>>>S
'Spam'
>>>S[:3]
'Spa'
>>>S[:-1]
'Spa'
>>>S[:]
'Spam'
S[:]實現了一個完全的頂層的序列對象的拷貝-一個有相同值,但是是不同內存片區的對象。
X[I:J:K]表示“索引x對象中的元素,從偏移為I直到偏移為J-1,每隔K元素索引一次“,第三個限制K,默認為1,表示步進。
也可以使用負數作為步進,S[::-1]的作用實際上是將序列進行發轉。
>>>S = 'hello'
>>>S[::-1]
'olleh'
字符串轉化工具
int函數將字符串轉換為數字,str函數將數字轉換為字符串表達形式。repr函數也能夠將一個對象轉換為其字符串形式,然后這些返回的對象將作為代碼的字符串,可以重新創建對象。
不可變性
字符串屬于不可變序列,即不能在原地修改一個字符串,例如,給一個索引進行賦值。若要改變一個字符串,需要利用合并,分片這樣的工具來建立并賦值給一個新的字符串,倘若必要的話,還要將這個結果賦值給字符串最初的變量名。
?
>>>S = 'spam'
>>>S[0] = "x"
#不允許修改S的值
>>>S = S + "SPAM"
>>>S
'spamSPAM'
>>>S = 'splot'
>>>S = S.replace('pl', 'plmal')
>>>S
'splmalot'
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

