1. 程式人生 > >python字符串-內置方法列舉

python字符串-內置方法列舉

spm ror sym rii afn bmc 類對象 nfa sce

 所謂內置方法,就是凡是字符串都能用的方法,這個方法在創建字符串的類中,下面是總結:

  首先,我們要學習一個獲取幫助的內置函數 help(對象) ,對象可以是一個我們創建出來的,也可以是創建對象的那個類,類也是一個對象,被稱為類對象。

  當我們進入解釋器的交互模式中輸入以下代碼時:

help(str)

  其中,str就是創建字符串的類,然後我們就會得到一長串的結果:

技術分享圖片 字符串內置方法


  首先,我們要註意一個問題,所以的方法都沒有改變原字符串本身,都是返回了一個新對象,具體原理我會在講到函數中說明,而一個新的對象沒有把它賦值給一個變量的話,其引用數就為0,在python進行垃圾回收的時候,就會將其從內存中清除。

   另外,如果你英文夠好的話,其實使用 help() 函數就能夠自行學習了,所以這裏對幫助函數是一些要點進行說明:

  1. <==> 表示相對於,意思這前後的方法效果是一樣的

  2. -> 表示函數的返回值,意思是這個方法處理以後,返回的值是什麽類型,可以是字符串 string ,也可以是數字 int 等等。關於返回值的詳細,會在講函數的時候分析。

  3.函數進行傳值的時候,對傳入的值的類型是有要求的,不然會有很多報錯,但這裏並沒有明說一定要傳什麽類型的值,而已在英文說明中隱含,所以需要一定的英語閱讀能力,英文不好就用經驗來堆吧。


  首先,我先來說說對於字符串來說,各運算符的含義:

  1.+

    代表字符串拼接,不多講了

  2.in

    表示給定的字符串是否在原字符串裏面,返回布爾值

  3.==

    判斷兩個字符串是否一樣,值相等就行,返回布爾值

  4.is

    判斷是否是統一對象,不僅值要相同,在內存中的地址也有一樣,返回布爾值

  5.!=

    不等於,值和對象都不相等,返回布爾值

  5.<,>,<=,>=

    字符串的大小判斷非常奇特,它是用每個字符逐一比較,比較的是字符對應的ascll編碼,例如:

a = ‘a‘    #以十進制的ascll為例,其為97
b = ‘b‘    #以十進制的ascll為例,其為98
a < b

  技術分享圖片

    另外,其是每個字符逐一比較的,一旦某個字符比另一個大,則整個字符串都大於另一個,例如

技術分享圖片

    a只有一個字符,但比較的時候,是用 a 的第一個字符 ‘z‘ 和 b的第一個字符 ‘a‘ 比較,因為‘z‘ > ‘a‘ 了,所以整個字符串都大。如果逐一比較時,兩個字符相等的話,就比較下一個字符,如果比較到最後都相等,則說明兩個字符串的值相等(==)。至於是否是同一對象就需要另外確定。

  6.*

    字符串的乘法將會返回一個多出重復原字符串的副本。

技術分享圖片

    只能和數字相乘,字符串間相乘是不可以的。

技術分享圖片

    也沒有什麽“乘法分配率”的說法,這樣只是重復元祖而已。

  7.%

    取模運算符就是字符串格式化時使用的符號。

python字符串-內置方法列舉