上一章中已經講到連接兩個字符串的一種方法。復習一下:
>>> a= 'py' >>> b= 'thon' >>> a+b 'python'
既然這是一種方法,言外之意,還有另外一種方法。
連接字符串的方法2
在說方法2之前,先說明一下什么是占位符,此前在講解變量(參數)的時候,提到了占位符,這里對占位符做一個比較嚴格的定義:
來自百度百科的定義:
顧名思義,占位符就是先占住一個固定的位置,等著你再往里面添加內容的符號。
根據這個定義,在python里面規定了一些占位符,通過這些占位符來說明那個位置應該填寫什么類型的東西,這里暫且了解兩個占位符:%d――表示那個位置是整數,%s――表示那個位置應該是字符串。下面看一個具體實例:
要求打印(print)的內容中,有一個%d占位符,就是說那個位置應該放一個整數。在第二個%后面,跟著的就是那個位置應該放的東西。這里是一個整數1。我們做下面的操作,就可以更清楚了解了:
>>> a=1 >>> type(a)#a是整數 >>> b="1" >>> type(b) #b是字符串 >>> print "one is %d"%a one is 1 >>> print "one is %d"%b #報錯了,這個占位符的位置應該放整數,不應該放字符串。 Traceback (most recent call last): File " ", line 1, in TypeError: %d format: a number is required, not str
同樣道理,%s對應的位置應該放字符串,但是,如果放了整數,也可以。只不過是已經轉為字符串對待了。但是不贊成這么做。在將來,如果使用mysql(一種數據庫)的時候,會要求都用%s做為占位符,這是后話,聽聽有這么回事即可。
>>> print "one is %s"%b one is 1 >>> print "one is %s"%a #字符串是包容的 one is 1
好了。??嗦半天,占位符是不是理解了呢?下面我們就用占位符來連接字符串。是不是很有意思?
>>> a = "py" >>> b = "thon" >>> print "%s%s"%(a,b) #注
python
注:仔細觀察,如果兩個占位符,要向這兩個位置放東西,代表的東西要寫在一個圓括號內,并且中間用逗號(半角)隔開。
字符串復制
有一個變量,連接某個字符串,也想讓另外一個變量,也連接這個字符串。一種方法是把字符串再寫一邊,這種方法有點笨拙,對于短的到無所謂了。但是長的就麻煩了。這里有一種字符串復制的方法:
>>> a = "My name is LaoQi. I like python and can teach you to learn it." >>> print a My name is LaoQi. I like python and can teach you to learn it. >>> b = a >>> print b My name is LaoQi. I like python and can teach you to learn it. >>> print a My name is LaoQi. I like python and can teach you to learn it.
復制非常簡單,類似與賦值一樣??梢岳斫鉃槟莻€字符串本來跟a連接著,通過b=a,a從自己手里分處一股繩子給了b,這樣兩者都可以指向那個字符串了。
字符串長度
要向知道一個字符串有多少個字符,一種方法是從頭開始,盯著屏幕數一數。哦,這不是計算機在干活,是鍵客在干活。鍵客,不是劍客。劍客是以劍為武器的俠客;而鍵客是以鍵盤為武器的俠客。當然,還有賤客,那是賤人的最高境界,賤到大俠的程度,比如岳不群之流。
鍵客這樣來數字符串長度:
>>> a="hello" >>> len(a) 5
使用的是一個函數len(object)。得到的結果就是該字符串長度。
>>> m = len(a) #把結果返回后賦值給一個變量 >>> m 5 >>> type(m) #這個返回值(變量)是一個整數型
字符大小寫的轉換
對于英文,有時候要用到大小寫轉換。最有名駝峰命名,里面就有一些大寫和小寫的參合。如果有興趣,可以來這里看自動將字符串轉化為駝峰命名形式的方法。
在python中有下面一堆內建函數,用來實現各種類型的大小寫轉化
S.upper() #S中的字母大寫 S.lower() #S中的字母小寫 S.capitalize() #首字母大寫 S.istitle() #S是否是首字母大寫的 S.isupper() #S中的字母是否便是大寫 S.islower() #S中的字母是否全是小寫
看例子:
>>> a = "Hello,World" >>> a.upper() #都是大寫 'HELLO,WORLD' >>> a.lower() #都是小寫 'hello,world' >>> a.capitalize() #首字母大寫,其余小寫 'Hello,wold' >>> a.istitle() #首字母是否是大寫,如果是返回True,不是返回False True >>> a 'Hello,Wold' >>> b="hellow,world" >>> b.istitle() #首字母不是大寫,返回false False >>> a.islower() #是否字符串中都是小寫,如果是返回true,不是返回false False >>> b.islower() True
字符串問題,看來本講還不能結束。下一講繼續。有看官可能要問了,上面這些在實戰中怎么用?我正想為你的,請鍵客設計一種實戰情景,能不能用上所學。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
