1. 程式人生 > >字串型別的操作

字串型別的操作

字串:

 把字元連成串串. 在python中⽤用', ", ''', """引起來的內容被稱為字串

字串索引與切片

在字串中一個字元佔用一個位置,索引位置從0開始,例如字串s = ‘cisco’

根據索引提取字串中的某個字元的方法是s[下標]  s表示的是字串對應的變數,下標就是索引的位置

eg:提取一個字元's'  直接使用s[2] 或s[-3]

提取多個字元,就叫切片,提取方式是s[start:end:step],  start 表示的是切片的起始位置,end表示切片的末端位置,但是沒有取到    相當於區間[start ,end)   ,step是步長,表示每隔step個字元取一個值,預設的值是1,表示的在切片的是從左往右取值,如果將其改為負數 的話,表示是從右往左取值

eg:1.提取‘sc

2.提取'so'

3.'cisco' 直接取反

print(s[2:4])
print(s[2::2])#如果對應的位置沒有填寫數字表示的是取到頂端,表示的在索引2到最後的位置之間,每隔2個字元取一個值
print(s[::-1])#從右往左,取全部的值

字串的操作方法:

注意:字串串是不可變的物件, 所以任何操作對原字串串是不會有任何影響的

1.capitalize()  將字串的首字母變為大寫

2.lower()  將字母全部轉換成小寫

3.upper() 將字母全部轉換成大寫

 

4.strip()去除字串左右兩端的某個東西,預設是去除空格、\n、\t,如果想要修改 eg:strip('a'),strip('a,b') 兩個的作用分別是去除字串左右兩端的素有的a,和去除字串左右兩端的所有的a,b ,lstrip()表示從左邊去除,rstrip()表示從右邊去除

5.replace('old','new')   在字串中將某些字元替換成另一個字元

6.split('切開的標點')  在字串中以某些字元為中心將字串切開,之後以列表的形式儲存起來

7.startswith() 與endswith()  判斷是否以某個字元開頭語判斷是否以某個字元結尾

8.find() 查詢某個字元在字串的索引位置,如果找不到就返回-1 

index() 的作用與find的作用基本相同,但是在index中如果沒有在字元竄中查詢到要找的內容的話,就會報錯

9.len()內建函式 計算字串中元素的個數  同樣適用於列表,元組,字典(都是可以迭代)

 

10 swapcase()   大小寫相互轉換

11.title()  每個被特殊字元隔開的單詞的首字母都會大寫,中文字元也算是特殊字元

12.center(長度,'居中後剩餘長度填充的東西')   預設是填充空格(如果不填的話)

 

13.expandtabs()   更改tab 的長度,預設更改的長度是8

14.for.mat()  格式化輸出

s1 = '這是什麼%s,有什麼%s,算了,回去%s,這是第%d天' %('','**','?',1)
s2 = '這是什麼{},有什麼{},算了,回去{},這是第{}天'.format('','**','?',1)
#上面都是按照一一對應進行填充的
#format還有的功能是指定位置進行填充和指定關鍵字
s3 = '這是什麼{1},有什麼{0},算了,回去{1},這是第{2}天'.format('','**',1)
s4 = '這是什麼{name},有什麼{b},算了,這是第{num}天'.format(name = '',b = '**',num = 1)
print(s1,'\n', s2,'\n',s3,'\n',s4)

判斷型別

isalnum()       # 判斷是否由字母和數字組成

isalpha()   # 是否由字母組成

# 是否由數字組成, 不包括小數點

 isdigit()   判斷是否為普通阿拉伯數字(整數)

isnumeric() 中文的數字也能識別