網(wǎng)站首頁 編程語言 正文
切片——str[start:end]
str1 = ' python str ' #切片 print(str1[3:6]) # str[start:end](下標(biāo)從 0 開始)從下標(biāo)為start開始算起,切取到下標(biāo)為 end-1 的元素,切取的區(qū)間為 [start, end) print(str1[2:8:2]) # str[start:end:step],取 [start, end) 之間的元素,每隔 step 個取一個 print(str1[2:9:2])
tho
yhn
yhns
字符串長度——len(str)
str1 = "aBCd Efgh ijK LmN" print(len(str1)) # 返回字符串的長度
17
重復(fù)字符串 ——1、str * n,2、n * str
#重復(fù)字符串 1、str * n,2、n * str, n為一個 int型的數(shù)字 str1 = ' python str ' print(str1*2) print(3*str1)
python str python str
python str python str python str
查找某個字符 or 某個字符子串在不在原字符串中
1、in 關(guān)鍵字
# in 關(guān)鍵字 str1 = ' python str ' print('p' in str1) print('py' in str1) print('py' not in str1)
True
True
False
2、find函數(shù)
# str.find(str, start=0, end=len(string)) 如果包含子字符串返回開始的索引值,否則返回-1。 str1 = ' python str ' str2 = "python" print(str1.find(str2)) print(str1.find(str2, 1)) print(str1.find(str2, 5))
1
1
-1
3、index函數(shù)
# str.index(str, start=0, end=len(string)) 如果包含子字符串返回開始的索引值,否則拋出異常。 str1 = ' python str ' str2 = "python" print(str1.index(str2)) print(str1.index(str2, 1)) print(str1.index(str2, 5))
1
1Traceback (most recent call last):
File “E:/李明/pycharmProject/深度學(xué)習(xí)入門/main.py”, line 27, in
print(str1.index(str2, 5))
ValueError: substring not found
4、rfind函數(shù)
str11 = " python str python str " str2 = "python" print(str11.rfind(str2)) print(str11.rfind(str2,10,len(str11))) # str.rfind(substr, start,end) 類似于 find()函數(shù),不過是從右邊開始查找.
5、rindex函數(shù)
str11 = " python str python str " str2 = "python" print(str11.rindex(str2)) # str.rindex(substr, start,end)類似于 index(),不過是從右邊開始. print(str11.rindex(str2,10,len(str11)))
字符串中某字符(子字符串)的數(shù)量——str.count(sub, start= 0,end=len(string))
str = "li hua shi ge huai hai zi" print(str.count('i', 0, 15)) # str.count(sub, start= 0,end=len(string)) print(str.count('i')) print(str.count('shi'))
2
5
1
去除空格——str.strip()、str.lstrip()、str.rstrip()
str1 = ' python str ' print (str1) print (str1.strip()) # 去首尾空格 print (str1.lstrip()) # 去左側(cè)空格 print (str1.rstrip()) # 去右側(cè)空格
結(jié)果:
分割字符串——str.split()
str1 = '1 , 2 , 3 , 4 , 5' print (str1.split()) # 默認(rèn)使用空格分隔 print (str1.split(' ')) # 指定使用空格進(jìn)行分隔,首尾如果有空格,則會出現(xiàn)在結(jié)果中 print (str1.split(',')) # 指定其他字符串進(jìn)行分隔,指定,分割 print (str1.split('3 ,')) # 指定 3 , 分割
[‘1’, ‘,’, ‘2’, ‘,’, ‘3’, ‘,’, ‘4’, ‘,’, ‘5’]
[‘1’, ‘,’, ‘2’, ‘,’, ‘3’, ‘,’, ‘4’, ‘,’, ‘5’]
['1 ', ’ 2 ', ’ 3 ', ’ 4 ‘, ’ 5’]
['1 , 2 , ‘, ’ 4 , 5’]
以 str 為分隔符切片 mystr,如果 maxsplit有指定值,則僅分隔 maxsplit 次
str1 = '1 , 2 , 3 , 4 , 5' print (str1.split(',')) # 指定其他字符串進(jìn)行分隔,指定,分割 print (str1.split(',',3))
['1 ', ’ 2 ', ’ 3 ', ’ 4 ‘, ’ 5’]
['1 ', ’ 2 ', ’ 3 ‘, ’ 4 , 5’]
替換字符串——str.replace(old, new, max)
# str.replace(old, new, max) 字符串中的 old(舊字符串) 替換成 new(新字符串),如果指定第三個參數(shù)max,則替換不超過 max 次。 str1 = "li hua shi ge huai hai zi,li hua shi ge huai hai zi" print(str1.replace("ai", "PL")) print(str1.replace("ai", "PL", 3))
li hua shi ge huPL hPL zi,li hua shi ge huPL hPL zi
li hua shi ge huPL hPL zi,li hua shi ge huPL hai zi
判斷字符串是否以指定前綴、后綴結(jié)尾
是否是指定前綴——str.startswith(str, start=0,end=len(string))
# str.startswith(str, start=0,end=len(string)),檢查字符串[start,end)以指定子字符串開頭,如果是則返回 True,否則返回 False str1 = "this is string example....wow!!!" print(str1.startswith('this')) print(str1.startswith('is', 2, 4)) print(str1.startswith('his', 1, 3))
True
True
False
是否是指定后綴——str.endswith(suffix, start, end)
# str.endswith(suffix, start, end),檢查字符串[start,end)以指定后綴結(jié)尾,是返回True,否則返回False str1 = "this is string example....wow!!!" str2 = "wow!!!" print (str1.endswith(str2)) # True print (str1.endswith(str2,20)) # True str2 = "is" print (str1.endswith(str2, 2, 4)) # True print (str1.endswith(str2, 2, 6)) # False print (str1.endswith(str2, 2, 7)) # True
True
True
True
False
True
將字符串的第一個字母變成大寫,其他字母變小寫——str.capitalize()
str1 = "aBCd Efgh ijK LmN" print(str1.capitalize()) # 將字符串的第一個字母變成大寫,其他字母變小寫
Abcd efgh ijk lmn
轉(zhuǎn)換字符串中所有大寫字符為小寫,將字符串中的小寫字母轉(zhuǎn)為大寫字母——str.lower()、str.upper()
str1 = "aBCd Efgh ijK LmN" print(str1.lower()) # 轉(zhuǎn)換字符串中所有大寫字符為小寫 print(str1.upper()) # 將字符串中的小寫字母轉(zhuǎn)為大寫字母
abcd efgh ijk lmn
ABCD EFGH IJK LMN
對字符串的大小寫字母進(jìn)行轉(zhuǎn)換——str.swapcase()
str1 = "aBCd Efgh ijK LmN" print(str1.swapcase()) # 對字符串的大小寫字母進(jìn)行轉(zhuǎn)換
AbcD eFGH IJk lMn
返回字符串 str 中最小(大)的字母 ( ASCII碼比大小)——max(str)、min(str)
str1 = "aBCd Efgh ijK LmN" print(max(str1)) # 返回字符串 str 中最大的字母 print(min(str1)) # 返回字符串 str 中最小的字母 此實例是空格最小 ASCII碼
m
? (空格最小)
把字符串的每個單詞首字母大寫——str.title()
str1 = "aBCd Efgh ijK LmN" print(str1.title()) # 把字符串的每個單詞首字母大寫
Abcd Efgh Ijk Lmn
檢測字符串組成
檢測數(shù)字——str.isdigit()、str.isnumeric()、str.isdecimal()
str1 = "123456" print(str1.isdigit()) # 檢測字符串是否只由數(shù)字組成 print(str1.isnumeric()) # 檢測字符串是否只由數(shù)字組成,這種方法是只針對unicode對象 print(str1.isdecimal()) # 檢查字符串是否只包含十進(jìn)制字符。這種方法只存在于unicode對象
檢測字母——str.isalpha()
str1 = "abcd" print(str1.isalpha()) # 檢測字符串是否只由字母組成
檢測字母和數(shù)字——str.isalnum()
str1 = "123456abcd" print(str1.isalnum()) # 檢測字符串是否由字母和數(shù)字組成
檢測其他
str.isspace() # 檢測字符串是否只由空格組成 str.islower() # 檢測字符串是否由小寫字母組成 str.isupper() # 檢測字符串中所有的字母是否都為大寫 str.istitle() # 檢測字符串中所有的單詞拼寫首字母是否為大寫,且其他字母為小寫
這幾個就不舉例子了
填充字符串 (左填充、右填充、居中填充)——str.rjust(width)、str.rjust(width)、str.rjust(width)
str1 = "abcd" print(str1.ljust(10)) # str.rjust(width) 返回一個原字符串左對齊,并使用空格填充至長度 width 的新字符串 print(str1.rjust(10)) # str.rjust(width) 返回一個原字符串右對齊,并使用空格填充至長度 width 的新字符串 print(str1.center(10)) # str.rjust(width) 返回一個原字符串居中,并使用空格填充至長度 width 的新字符串
abcd ? ? ?
? ? ? ?abcd
? ? abcd ? ?
把字符串分割成三部分,子字符串前的、子字符串、子字符串后的——str.partition(substr)、str.rpartition(substr)
str1 = "abcdefghijklmnabcdefghijklmn" str2 = "efg" print(str1.partition(str2)) # str.partition(substr) 返回一個3元的元組,第一個為分隔符左邊的子串,第二個為分隔符本身,第三個為分隔符右邊的子串。 print(str1.rpartition(str2)) #類似于 partition()函數(shù),不過是從右邊開始
(‘a(chǎn)bcd’, ‘efg’, ‘hijklmnabcdefghijklmn’)
(‘a(chǎn)bcdefghijklmnabcd’, ‘efg’, ‘hijklmn’)
join函數(shù)
# str.join()方法用于將序列中的元素以指定的字符連接生成一個新的字符串。 str = '-' seq = ("a", "b", "c"); # 字符串序列 print(str.join(seq)) # 'a-b-c'
a-b-c
總結(jié)
原文鏈接:https://wuyinzhiming.blog.csdn.net/article/details/108578161
相關(guān)推薦
- 2022-08-05 Redis實現(xiàn)分布式鎖的五種方法詳解_Redis
- 2022-11-03 python數(shù)據(jù)分析基礎(chǔ)知識之shape()函數(shù)的使用教程_python
- 2023-05-22 NumPy迭代數(shù)組的實現(xiàn)_python
- 2022-04-10 Blazor數(shù)據(jù)綁定用法_基礎(chǔ)應(yīng)用
- 2022-04-05 expected a string (for built-in components) or a c
- 2022-10-27 Python入門之字符串操作詳解_python
- 2022-11-10 C++?TCP網(wǎng)絡(luò)編程詳細(xì)講解_C 語言
- 2022-04-25 老生常談C語言中指針的使用_C 語言
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支