Python 字串基礎

2021-09-27 10:32:48 字數 3622 閱讀 2635

字串是 python 的基礎資料型別。我們常用引號('或")來建立字串,字串在程式中是最常用的資料型別之一。

連線字串使用『+』號

# 加號連線很簡單,兩個字串相加就可以

print

('hello'

+' world!'

)# 字串連線整型資料時會報錯,如下:

year =

'2017'

month =

8# 注意寫出下面**會報typeerror錯誤,month為整數型,需要str進行轉換

print

(year+month)

# 會報錯 typeerror錯誤資料型別不對

print

(year+

str(month)

)# str 強制轉換為字串型別

python字串運算常用的連線(+)、是否存在(in\not in)、原始字串(r/r

是否存在(in\not in)

str1 in str,判斷str1字串存於str2字串中,存在返回true,否則false

str1 not in str,判斷str1字串不存於str2字串中,與in相反

str1 =

'abcdefghijk'

print

('b'

in str1)

# b 存在str1 結果true

print

('b'

notin str1)

# b 存在str1 結果false

print

('cdf'

in str1)

# cdf 不存在str1 結果false

print

('cdf'

notin str1)

# cdf 不存在str1 結果true

python原始字串(r/r)

原始字串,所有的字串都是直接按照字面的意思來使用,它沒有轉義或不能列印的字元。即,字串中的轉義失效,你看到的是什麼樣,它的結果就是什麼樣。

原始字串在字元的第乙個引號前面加上r(可大寫可小寫),其他與字串的語法相同。

# 與轉義的對比,你會發現所有的\ 轉義都不起作用了

print

(r'hello\''

' world!'

)print

(r'c:\windows\system32\')

print

('c:\\windows\\system32\\'

)# 如果檔案位址不使用原始字串,需要在\前加上\轉義

print

(r'i\'am woodman'

)print

(r"我要學習\"python\""

)print

(r'linux\b'

)print

(r'linux\ngood!'

)print

(r'python\vgood!'

)print

(r'python\t good!'

)print

(r'woodman\r good!'

)print

(r'woodman\f good!'

)

字串的切片看上去非常複雜,其實很簡單,分為下面幾種

首先理解,字串中每個字元都分配乙個數字索引,第乙個索引是0,第二個索引是1,依此類推。

1、獲取單個字元

str[index]index為下標索引,從0開始,如果索引為負數則是倒著開始

print

("hello"[0

])# 獲取第乙個字元,字元獲取從0開始,第二個字元為1

# 字串的下標計數從0開始,它是乙個標記特殊的list(資料結構會講到)

print

("hello"[2

])# 獲取第三個字元

print

("hello"[-

1])# 獲取倒數第乙個字元,使用負數表示獲取倒數第幾個字元

2、獲取多個字元

str[start:end] 讀取索引start開始到索引為end-1結束的字元 。

w =

'woodman good!'

print

(w[1:3

])# 獲取索引1到2的字元 輸出結果:oo

print

(w[:4]

)# 獲取前4位

print

(w[5:]

)# 獲取從索引號5開始後面的字串 輸出結果:an good!

print

(w[:])

# 獲取整個字串

print

(w[5:-

1])# 獲取從索引號5開始後面的字串,不包括最後一位 輸出結果:an good

print

(w[-5:

-1])

# 獲取倒數第5位到倒數第1位 輸出結果:an good 輸出結果:good

3、通過步長擷取(自動化中沒什麼用)

str[start?step] 讀取索引start開始每相隔step讀取字元直到索引為end-1 結束

w =

'woodman good!'

print

(w[1:10

:2])

# 表示從第二個字元開始擷取,間隔2個字元取乙個

#輸出結果:oda o

#自己嘗試一下索引為負數的

4、拓展

字串切片有幾種特殊的用法

w =

'woodman good!'

print

(w[::2

])# 隔兩個擷取乙個字串

print

(w[::-

1])# 字串倒敘,這個是比較有意思的

1、常用字串函式

#前面4個要牢記,百分百用到

string = 』 我是個木頭人,我是個大帥哥 』

string.replace(『帥哥』, 『美女』) # 替換字串,帥哥替換從美女

string.strip() # 去除左右空格

string.split(』,』) # 拆分字串,返回list

string.find(』,』) # 查詢字串,返回索引號

string = 「i』am woodman」

print(string.upper()) # 將字串全部轉為大寫

print(string.lower()) # 將字串全部轉為小寫

print(string.title()) # 將字串單詞的第乙個字母轉為大寫,其它字母小寫

注意:所有的字串函式都是有返回值的,它不是對原有字串操作,你需要乙個變數來接收你處理後的字串。

如:a=string.strip(),string.strip()得到的值傳遞給a,但是string的值沒有被改變。

python基礎 字串

轉義符 n換行 print 我是 nzzz 我是 zzz t製表符 print 我是 tzzz 我是 zzz 雙引號 print 我是 zzz 我是 zzz 單引號 print 我是 zzz 我是 zzz 續航符 name s z print name sz原始字串 原始字串 r abc r abc...

Python基礎字串

str1 hello python str1 str1.capitalize 把開頭轉換成大寫 print str1 str1 str1.center 8,居中並填充 print str1 str1 str1.find j 0,len str1 尋找元素所在的位置,沒在返回 1 print str1...

Python基礎 字串

判斷全部否是字母 str helloween if str.isalpha print 字母 判斷全部否是數字 str 1234 if str.isdecimal print 數字 判斷都是大寫 str abc if str.isupper print 大寫 判斷都是小寫 str abc if st...