1. 程式人生 > >python【二】python的字串操作

python【二】python的字串操作

python的字串操作很靈活;先來看一個例子:

str='helloworld'

首先我們輸出這個字串:

print  str這是一種表示方法,還有很多表示的方法;

比如:

print  str[0:10]

我們也能得到 helloworld

print str[1:3]

我們得到:el,擷取字串的el兩個字元;

擷取字串的前提條件:

是這樣的我們如果要擷取某段字元,首先要查詢到這段字元的起始位置,然後才能正確擷取;在python中提供了字串查詢的方法,這個跟c語言裡面的字元查詢很相似;即find()方法;

比如我們來查詢wo這個字串;

poN =str.find('wo')

我們將得到5,即wo得首個字元在字串的5號位置出現。這樣我們從5號位置擷取2個長度的字元就可以的到我們想要的wo字串

了;

5:7表示擷取字串的長度;為2

print  str[5:7] 結果就是wo

python關於字串的另類操作:

比如我們要輸出上述字串的最後一個字元,只需要進行以下操作就可以了:
print  str[-1]  或者print str[10]這個需要知道字串的長度才可以;

我們將得到  d這個字元;

我們還可以得到除最後一個字元以外的所有字元:
print  str[:-1]我們得到  helloworl;

python中字串的拼接:

當然操作字串拼接和替換的前提是都要找到該字串即要使用 str.find()函式;

怎麼拼接呢?在python中可以使用 +號操作符來進行字串間的拼接

比如:

str1='we  are'

str2='good  friends'

str3=str1+' '+str2 

print  str3    

我們得到we  are  good   friends

python字串的不可變性:

字串在python中具有不可變性--在字串建立後,其內部的值不能改變,這個和c/c++對字串的操作變化要大的多;

那麼我們怎樣來改變其內部的值呢?
還是上面的那個helloworld,我想讓他變成hellozorld字串,這個怎麼實現?

我們可以這麼做:

str='helloworld'

str1='z'

str2=str[0:5]+str1

str3=str[6:]

str4=str2+str3

print  str4

我們得到  hellozorld

python中的字元替換

像我們上面做的那樣,我並沒有使用python提供的替換函式,實際上python是有提供替換函式的,就是replace()方法

比如:

str='helloworld'

str2=str[1:5]

str3='call'

str4=str.replace(str2,str3)

print str4

我們得到 hcallworld ,這個替換方法是有一個返回值的,原因是字串內部不能改變。

Python中獲取字串的長度:

print  len(str)

python中字串的大小寫轉換;

str='helloworld'

print str.upper()

我們將得到HELLOWORLD