字符串就是一個話題中心。
給字符串編號
在很多很多情況下,我們都要對字符串中的每個字符進行操作(具體看后面的內容),要準確進行操作,必須做的一個工作就是把字符進行編號。比如一個班里面有50名學生,如果這些學生都有學號,老師操作他們將簡化很多。比如不用專門找每個人名字,直接通過學號知道誰有沒有交作業。
在python中按照這樣的順序對字符串進行編號:從左邊第一個開始是0號,向下依次按照整數增加,為1、2...,直到最后一個,在這個過程中,所有字符,包括空格,都進行變好。例如:
Hello,wor ld
對于這個字符串,從左向右的變好依次是:
0 1 2 3 4 5 6 7 8 9 10 11H e l l o , w o r l d
在班級了,老師只要喊出學生的學號,自動有對應的學生站起來。在python里面如何把某個編號所對應的字符調出來呢?看代碼:
>>> a = "Hello,wor ld">>> len(a) #字符串的長度是12,說明公有12個字符,最后一個字符編號是1112>>> a[0]'H'>>> a[3]'l'>>> a[9]' '>>> a[11]'d'>>> a[5]','
特別說明,編號是從左邊開始,第一個是0。
能不能從右邊開始編號呢?可以。這么人見人愛的python難道這點小要求都不滿足嗎?
>>> a[-1]'d'>>> a[11]'d'>>> a[-12]'H'>>> a[-3]' '
看到了嗎?如果從右邊開始,第一個編號是-1,這樣就跟從左邊區分開了。也就是a[-1]和a[11]是指向同一個字符。
不管從左邊開始還是從右邊開始,都能準確找到某個字符??垂傧矚g從哪邊開始就從哪邊開始,或者根據實際使用情況,需要從哪邊開始就從哪邊開始。
字符串截取
有了編號,不僅僅能夠找出某個字符,還能在字符串中取出一部分來。比如,從“hello,wor ld”里面取出“llo”。可以這樣操作
>>> a[2:5]'llo'
這就是截取字符串的一部分,注意:所截取部分的第一個字符(l)對應的編號是(2),從這里開始;結束的字符是(o),對應編號是(4),但是結束的編號要增加1,不能是4,而是5.這樣截取到的就是上面所要求的了。
試一試,怎么截取到",wor"
也就是說,截取a[n,m],其中n<m,得到的字符是從a[n]開始到a[m-1]
有幾個比較特殊的
>>> a[:] #表示截取全部'Hello,wor ld'>>> a[3:] #表示從a[3]開始,一直到字符串的最后'lo,wor ld'>>> a[:4] #表示從字符串開頭一直到a[4]前結束'Hell'
去掉字符串兩頭的空格
這個功能,在讓用戶輸入一些信息的時候非常有用。有的朋友喜歡輸入結束的時候敲擊空格,比如讓他輸入自己的名字,輸完了,他來個空格。有的則喜歡先加一個空格,總做的輸入的第一個字前面應該空兩個格。
新聞熱點
疑難解答