python字串操作

2021-08-31 01:15:47 字數 3356 閱讀 1872

轉義字元

我們可以通過「+特殊字元」,實現某些難以用字元表示的效果

\ 反斜槓符號 』 單引號 " 雙引號 \b 退格(backspace) \n 換行

\t 橫向製表符 \r回車 \ 續航符

字串拼接

1.可以使用+將多個字串拼接起來 」aa「+」bb「=」aabb「

(1)如果+兩邊都是字串,則拼接

(2)如果+兩邊都是數字,則加法運算

(3)如果+兩邊型別不同,則丟擲異常

2.可以將多個字字面字串直接放到一起實現拼接

>>> "aa""bb"

'aabb'

字串複製

使用*可以實現字串複製

>>> a ="wonita"*3

>>> a

'wonitawonitawonita'

不換行列印

呼叫print時,會自動列印乙個換行符,如果不想自動換行,我們可以自己通過end=」任意字

符串「,實現末尾新增任何內容

print("aa",end ="\t")

print("bb",end ="*")

print("cc")

結果aa bb*cc

從控制台讀取字串

我們可以使用inp()從控制台讀取鍵盤輸入的內容

>>> name = input("請輸入你的名字:")

請輸入你的名字:吾志高

>>> name

'吾志高'

int() 將字串轉化為整數 float() 字串轉化為浮點數 str()將其他型別資料

轉化為字串

使用 [ ] 提取字串

字串的本質就是字串序列,我們可以通過在字串後面新增 [ ] ,在 [ ] 裡面指定偏移量

可以提取該位置的單個字元

正向搜尋:

最左側第乙個字元,偏移量是0,直到len(str)-1為止

反向搜尋:

最右側第乙個字元,偏移量是-1,倒數第二個是-2,直到-len(str)為止

>>> a ="abcdefghijklmnopqrstuvwxyz"

>>> a[0]

'a'>>> a[25]

'z'>>> a[-1]

'z'>>> a[-26]

'a'>>>

replace()實現字串替換

字串是「不可改變的」,我們通過獲取字串指定位置的字元,但是我們不能改變字串

當我們需要替換某些字元,這是,只能通過建立新的字串來實現

>>> a='abcdefghijklmnopqrstuvwxyz'

>>> a.replace("c","高")

'ab高defghijklmnopqrstuvwxyz'

>>> a

'abcdefghijklmnopqrstuvwxyz'

>>> a = a.replace("c","好")

>>> a

'ab好defghijklmnopqrstuvwxyz

這個不是替換,是新建,字串不可改變

字串切片slice操作

切片slice操作可以讓我們快速提取字串,標準格式為

[起始偏移量 start:終止偏移量 end:步長 step]

>>> a = "abcdefghij"

>>> a[1:5] 步長預設為1

'bcde'

>>> a[1:5:2]

'bd'

>>> a[2:] end預設為最後一位

'cdefghij'

>>> a[:8] start預設為0

'abcdefgh'

逆序操作類似

'abcdefgh'

>>> a[:-3]

'abcdefg'

>>> a[-3:]

'hij'

反向輸出

>>> a[::-1]

'jihgfedcba'

終止偏移量大於最大偏移量會預設為最大偏移量

split() 分割和 join() 合併

split() 可以基於指定分隔符將字串分割成多個子字串(儲存到列表中)

如果部指定分隔符,則預設使用空白字元(換行符/空格/製表符)

>>> a = "to be or not to be"

>>> a.split()

['to', 'be', 'or', 'not', 'to', 'be']

>>> a.split("be")

['to ', ' or not to ', '']

join()用法

>>> a = ["i","'m","hunger"]

>>> "*".join(a) 通過*連線

"i*'m*hunger"

>>> " ".join(a) 通過空格連線

"i 'm hunger"

拼接字串要點:

使用字串拼接符+,會生成新的字串物件,而join()函式在拼接字串之前會計算所有

字串的長度,然後注意拷貝,僅新建一次物件

字串駐留機制

字串駐留:僅儲存乙份相同且不可改變字串的方法,不同的值被存放在字串駐留池中

python支援字串駐留機制,對於符合識別符號規則的字串(僅包含下劃線(_),字母和數

字)會啟用字串駐留機制駐留

>>> a = "abc_33"

>>> b = "abc_33"

>>> a is b

true

>>> c = "a#"

>>> d = "a#"

>>> c is d

false

>>> c == d

true

is is是判斷兩個識別符號是不是引用同乙個物件

is not is not是判斷兩個識別符號是不是引用不同物件

is 與 == 區別

is用於判斷兩個變數引用的物件是不是同乙個,比較的是位址

==用於判斷引用的物件的值是否相等

成員操作符

in/not in 關鍵字,判斷某個字串(子字串)是否在字串中

>>> a = "abcdefg"

>>> "b" in a

true

>>> "acd" in a

false

Python字串操作

1 複製字串 str2 str1 2 鏈結字串 str abc 3 查詢字串 string.find sub string.index sub string.rfind sub string,rindex sub 4 字串比較 cmp str1,str2 cmp str1.upper str2.up...

Python字串操作

python如何判斷乙個字串只包含數字字元 python 字串比較 下面列出了常用的python實現的字串操作 strcpy sstr1,sstr2 sstr1 strcpy sstr2 sstr1 sstr1 strcpy2 print sstr2 strcat sstr1,sstr2 sstr1...

python字串操作

在 python 有各種各樣的string操作函式。在歷史上string類在 python 中經歷了一段輪迴的歷史。在最開始的時候,python 有乙個專門的string的module,要使用string的方法要先import,但後來由於眾多的 python 使用者的建議,從 python 2.0開...