5.1 字串

 

 


字串: 

 

字串就是電腦裡面的一段文字,都可以叫字串。 

Python的字串處理強大而且簡單。 

 

基本特性 

 

Python的字串可以由'或者"包起來,效果是一樣的, 

 

'字串

"字串

 

字串是不可以變更(immutable)的物件,重新賦值是給一個新的字串並不是修改原字串本身。 

跳脫字元的使用一樣是用 \ ,大致上和 Java 一樣。\0 也是代表 ASCII 中的 NULL,但並不像 C 語言中代表中斷字元,就是說字串不是依照這個來作結束記號的,所以可以拿來儲存Binary的資料。要使用unicode的字串只需要前面加上 u 或是 U 就可以了。 

 

ex: 

    #設定Oh my god這樣的字串 

    name = "Oh my god"

    print name

 

    # '以及"兩個可以使用的好處 

    #就是不會有衝到的問題 

    haha = "Local's pen"

    print Local

    

    #也可以這樣用 

 

    haha = 'What is "Oh my god"?'

    print haha

 

    #多行文字

    ya = """跟你說...

    ....

    ....

    ....

    ....

    ....

    ....

    """

    print ya

字串運算

當想要把不同的字串合起來,或是一個字重複幾次,就需要字串的運算,先介紹最常用的幾種:

字串運算                            說明

left+right                       左右字串串接在一起變成"leftright"的字串

n*s                         字串乘上一個數字,或是數字成上一個字串,表是重覆該字串n

x in s                      如果x出現在字串s中為真

x not in s                 如果x不出現在字串s中為真

ken(s)                     len函數回傳s字串的長度

示範字串運算的用法:

firstName = "Shawn"

familyName ="Wen"

#在這裡用+將字串接起來

print "My name is " + firstName + " " +familyName

#在這裡用*將同一個字串重複n

print u"一四五" *3

 

#這裡用in來判斷字串理是否有段文字

#因為成立,所以回傳True

print u'中文'in u ' 中文字藏在中文字裡'

 

#len韓數計算""中有幾個字

print ken(u'有幾個')

 

以上運算的對象都是有限定的,例如不能把字串和數字相加

這樣是錯誤的,必須要把其它物件轉成字串

 

將物件轉換為字串

Python並沒有規定哪些物件可以轉換成字串,哪些不行,一切依照該物件自己決定,就像JavaClass自訂toString()的意思一樣。

str(o)                  回傳o物件轉換成易讀的字串

unicode(o)             回傳o此物件轉換成易讀的unicode字串

repr(o)                 回傳o此物件轉換成以跳脫字元表達的字串