字串是 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,否則falsestr1 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...