摘要:字符串是一個(gè)很長的話題,縱然現(xiàn)在開始第三部分,但是也不能完全說盡。字符串就是一個(gè)話題中心。也就是和是指向同一個(gè)字符。字符串截取有了編號,不僅僅能夠找出某個(gè)字符,還能在字符串中取出一部分來。
字符串是一個(gè)很長的話題,縱然現(xiàn)在開始第三部分,但是也不能完全說盡。因?yàn)樽址亲匀徽Z言中最復(fù)雜的東西,也是承載功能最多的,計(jì)算機(jī)高級語言編程,要解決自然語言中的問題,讓自然語言中完成的事情在計(jì)算機(jī)上完成,所以,也不得不有更多的話題。
字符串就是一個(gè)話題中心。
給字符串編號在很多很多情況下,我們都要對字符串中的每個(gè)字符進(jìn)行操作(具體看后面的內(nèi)容),要準(zhǔn)確進(jìn)行操作,必須做的一個(gè)工作就是把字符進(jìn)行編號。比如一個(gè)班里面有50名學(xué)生,如果這些學(xué)生都有學(xué)號,老師操作他們將簡化很多。比如不用專門找每個(gè)人名字,直接通過學(xué)號知道誰有沒有交作業(yè)。
在python中按照這樣的順序?qū)ψ址M(jìn)行編號:從左邊第一個(gè)開始是0號,向下依次按照整數(shù)增加,為1、2...,直到最后一個(gè),在這個(gè)過程中,所有字符,包括空格,都進(jìn)行變好。例如:
Hello,wor ld
對于這個(gè)字符串,從左向右的變好依次是:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|---|---|---|---|---|---|---|---|---|---|---|
H | e | l | l | o | , | w | o | r | l | d |
在班級了,老師只要喊出學(xué)生的學(xué)號,自動(dòng)有對應(yīng)的學(xué)生站起來。在python里面如何把某個(gè)編號所對應(yīng)的字符調(diào)出來呢?看代碼:
>>> a = "Hello,wor ld" >>> len(a) #字符串的長度是12,說明公有12個(gè)字符,最后一個(gè)字符編號是11 12 >>> a[0] "H" >>> a[3] "l" >>> a[9] " " >>> a[11] "d" >>> a[5] ","
特別說明,編號是從左邊開始,第一個(gè)是0。
能不能從右邊開始編號呢?可以。這么人見人愛的python難道這點(diǎn)小要求都不滿足嗎?
>>> a[-1] "d" >>> a[11] "d" >>> a[-12] "H" >>> a[-3] " "
看到了嗎?如果從右邊開始,第一個(gè)編號是-1,這樣就跟從左邊區(qū)分開了。也就是a[-1]和a[11]是指向同一個(gè)字符。
不管從左邊開始還是從右邊開始,都能準(zhǔn)確找到某個(gè)字符。看官喜歡從哪邊開始就從哪邊開始,或者根據(jù)實(shí)際使用情況,需要從哪邊開始就從哪邊開始。
字符串截取有了編號,不僅僅能夠找出某個(gè)字符,還能在字符串中取出一部分來。比如,從“hello,wor ld”里面取出“l(fā)lo”。可以這樣操作
>>> a[2:5] "llo"
這就是截取字符串的一部分,注意:所截取部分的第一個(gè)字符(l)對應(yīng)的編號是(2),從這里開始;結(jié)束的字符是(o),對應(yīng)編號是(4),但是結(jié)束的編號要增加1,不能是4,而是5.這樣截取到的就是上面所要求的了。
試一試,怎么截取到",wor"
也就是說,截取a[n,m],其中n 有幾個(gè)比較特殊的 這個(gè)功能,在讓用戶輸入一些信息的時(shí)候非常有用。有的朋友喜歡輸入結(jié)束的時(shí)候敲擊空格,比如讓他輸入自己的名字,輸完了,他來個(gè)空格。有的則喜歡先加一個(gè)空格,總做的輸入的第一個(gè)字前面應(yīng)該空兩個(gè)格。 好吧,這些空格是沒用的。python考慮到有不少人可能有這個(gè)習(xí)慣,因此就幫助程序員把這些空格去掉。 方法是: S.strip() 去掉字符串的左右空格 S.lstrip() 去掉字符串的左邊空格 S.rstrip() 去掉字符串的右邊空格 看官在看下面示例之前,請先自己用上面的內(nèi)置函數(shù),是否可以? 學(xué)編程,必須做練習(xí),通過練習(xí)熟悉各種情況下的使用。 下面共同做一個(gè)練習(xí):輸入用戶名,計(jì)算機(jī)自動(dòng)向這個(gè)用戶打招呼。代碼如下: 這段代碼中的raw_input()的含義,就是要用戶輸入內(nèi)容,所輸入的內(nèi)容是一個(gè)字符串。 其實(shí),上面這段代碼存在這改進(jìn)的地方,比如,如果用戶輸入的是小寫,是不是要將名字的首字母變成大寫呢?如果有空格,是不是要去掉呢?等等。或許還有別的,看看能不能在這個(gè)練習(xí)中,將以前學(xué)習(xí)過的東西綜合應(yīng)用一下?>>> a[:] #表示截取全部
"Hello,wor ld"
>>> a[3:] #表示從a[3]開始,一直到字符串的最后
"lo,wor ld"
>>> a[:4] #表示從字符串開頭一直到a[4]前結(jié)束
"Hell"
去掉字符串兩頭的空格
>>> b=" hello "
>>> b
" hello "
>>> b.strip()
"hello"
>>> b
" hello "
>>> b.lstrip()
"hello "
>>> b.rstrip()
" hello"
練習(xí)
#coding:utf-8
print "please write your name:"
name=raw_input()
print "Hello,%s"%name
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/37321.html
摘要:操練一下字符串吧。它是在告訴計(jì)算機(jī),它里面包裹著的是一個(gè)字符串。連接字符串方法在中按照下面方法操作老齊教老齊教這是一種最簡單連接兩個(gè)字符串的方法。請看官字符編碼就知道了。 如果對自然語言分類,有很多中分法,比如英語、法語、漢語等,這種分法是最常見的。在語言學(xué)里面,也有對語言的分類方法,比如什么什么語系之類的。我這里提出一種分法,這種分法尚未得到廣大人民群眾和研究者的廣泛認(rèn)同,但是,我相...
摘要:根據(jù)這個(gè)定義,在里面規(guī)定了一些占位符,通過這些占位符來說明那個(gè)位置應(yīng)該填寫什么類型的東西,這里暫且了解兩個(gè)占位符表示那個(gè)位置是整數(shù),表示那個(gè)位置應(yīng)該是字符串。啰嗦半天,占位符是不是理解了呢下面我們就用占位符來連接字符串。 上一章中已經(jīng)講到連接兩個(gè)字符串的一種方法。復(fù)習(xí)一下: >>> a= py >>> b= thon >>> a+b python 既然這是一種方法,言外之意,還有...
摘要:根據(jù)這個(gè)定義,在里面規(guī)定了一些占位符,通過這些占位符來說明那個(gè)位置應(yīng)該填寫什么類型的東西,這里暫且了解兩個(gè)占位符表示那個(gè)位置是整數(shù),表示那個(gè)位置應(yīng)該是字符串。啰嗦半天,占位符是不是理解了呢下面我們就用占位符來連接字符串。 感謝網(wǎng)友白羽毛的幫助。 上一章中已經(jīng)講到連接兩個(gè)字符串的一種方法。復(fù)習(xí)一下: >>> a= py >>> b= thon >>> a+b python 既然這...
摘要:定義在中,用方括號表示一個(gè),在方括號里面,可以是,也可以是類型的數(shù)據(jù),甚至也能夠是這種布爾值。前面在對進(jìn)行操作的時(shí)候,有一些內(nèi)置函數(shù),比如,這是去掉左右空格的內(nèi)置函數(shù),也是的方法。 前面的學(xué)習(xí)中,我們已經(jīng)知道了兩種python的數(shù)據(jù)類型:int和str。再強(qiáng)調(diào)一下對數(shù)據(jù)類型的理解,這個(gè)世界是由數(shù)據(jù)組成的,數(shù)據(jù)可能是數(shù)字(注意,別搞混了,數(shù)字和數(shù)據(jù)是有區(qū)別的),也可能是文字、或者是聲音、...
摘要:圖文教程教程廖雪峰的編程教室微信公眾號快速教程零基礎(chǔ)學(xué),地址老齊學(xué)習(xí)筆記第二版?zhèn)€人點(diǎn)評我是跟著的編程教室的微信公眾號每天學(xué)習(xí)一課來學(xué)習(xí)的,當(dāng)時(shí)的動(dòng)力是據(jù)說女神也在學(xué)完習(xí),后來也看過廖雪峰老師的教程,和老齊的沒有看過。 之前看到了 汪汪汪不是我的語言 在 喵在野 的基礎(chǔ)上寫的這篇文章《Python 零基礎(chǔ)入門資料整理(更新版)》,感覺實(shí)在是太簡陋了。雖說是針對初學(xué)者的Python零基礎(chǔ)入...
閱讀 3913·2021-11-24 09:38
閱讀 3248·2021-11-15 11:37
閱讀 864·2021-11-12 10:36
閱讀 3622·2021-10-21 09:38
閱讀 3301·2021-09-28 09:36
閱讀 2504·2021-09-22 16:01
閱讀 5156·2021-09-22 15:09
閱讀 1315·2019-08-30 15:55