最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python如何尋找主串中所有指定子串下標(biāo)

 更新時(shí)間:2023年01月03日 10:52:55   作者:頭禿頭涼涼  
這篇文章主要介紹了python如何尋找主串中所有指定子串下標(biāo),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

python尋找主串中所有指定子串下標(biāo)

該函數(shù)可實(shí)現(xiàn)顯示字符串中指定子串所有下標(biāo)(首字下標(biāo))

def subStrIndex(substr,str):
? ? result = []
? ? index = 0
? ? while str.find(substr,index,len(str)) != -1:
? ? ? ? temIndex = str.find(substr,index,len(str))
? ? ? ? result.append(temIndex)
? ? ? ? index = temIndex + 1
? ? return result

其中substr中傳入需要的尋找子串,str為主串。

使用示例:

str = "我們?nèi)チ颂彀查T,天安門附近有很多人"
list = subStrIndex('天安門',str)
print(list)

輸出結(jié)果:[4,8]

其中4表示第一次出現(xiàn)“天安門”的下標(biāo),8表示第二次出現(xiàn)的下標(biāo)。(由0開始)

python字符串常用操作

查找

1、find():檢測某個(gè)?串是否包含在這個(gè)字符串中,如果在,返回這個(gè)串開始的位置下標(biāo),否則則返回-1。

語法:字符串串序列列.find(?子串串, 開始位置下標(biāo), 結(jié)束位置下標(biāo))

mystr = "hello world and itcast and itheima and Python"
print(mystr.find('and')) # 12
print(mystr.find('and', 15, 30)) # 23
print(mystr.find('ands')) # -1

2、index():檢測某個(gè)?串是否包含在這個(gè)字符串中,如果在返回這個(gè)子串開始的位置下標(biāo),否則報(bào)異常。

語法:字符串串序列列.index(?子串串, 開始位置下標(biāo), 結(jié)束位置下標(biāo))

mystr = "hello world and itcast and itheima and Python"
print(mystr.index('and')) # 12
print(mystr.index('and', 15, 30)) # 23
print(mystr.index('ands')) # 報(bào)錯(cuò)
  • rfind(): 和find()功能相同,但查找?方向?yàn)橛覀?cè)開始。
  • rindex():和index()功能相同,但查找?方向?yàn)橛覀?cè)開始。

3、count():返回某個(gè)?子串串在字符串串中出現(xiàn)的次數(shù)

語法:字符串串序列列.count(?子串串, 開始位置下標(biāo), 結(jié)束位置下標(biāo))

mystr = "hello world and itcast and itheima and Python"
print(mystr.count('and')) # 3
print(mystr.count('ands')) # 0
print(mystr.count('and', 0, 20)) # 1

修改

1、replace():替換

語法:字符串序列.replace(舊?串, 新?串, 替換次數(shù))

mystr = "hello world and itcast and itheima and Python"
# 結(jié)果:hello world he itcast he itheima he Python
print(mystr.replace('and', 'he'))
# 結(jié)果:hello world he itcast he itheima he Python
print(mystr.replace('and', 'he', 10))
# 結(jié)果:hello world and itcast and itheima and Python
print(mystr)

字符串類型的數(shù)據(jù)修改的時(shí)候不能改變?cè)凶址瑢儆诓荒苤苯有薷臄?shù)據(jù)的類型即是不可變類型。

2、split():按照指定字符分割字符串。

語法:字符串序列.split(分割字符, num)

num表示的是分割字符出現(xiàn)的次數(shù),即將來返回?cái)?shù)據(jù)個(gè)數(shù)為num+1個(gè)。

mystr = "hello world and itcast and itheima and Python"
# 結(jié)果:['hello world ', ' itcast ', ' itheima ', ' Python']
print(mystr.split('and'))
# 結(jié)果:['hello world ', ' itcast ', ' itheima and Python']
print(mystr.split('and', 2))

3、join():用一個(gè)字符或?串合并字符串,即是將多個(gè)字符串合并為個(gè)新的字符串。

語法:字符或?串.join(多字符串組成的序列)

list1 = ['chuan', 'zhi', 'bo', 'ke']

# 結(jié)果:chuan_zhi_bo_ke
print('_'.join(list1))

4、字符轉(zhuǎn)換

  • capitalize():將字符串第一個(gè)字符轉(zhuǎn)換成大寫
  • title():將字符串每個(gè)單詞首字母轉(zhuǎn)換成大寫
  • lower():將字符串中大寫轉(zhuǎn)小寫
  • upper():將字符串中?寫轉(zhuǎn)大寫
mystr = "hello world and itcast and itheima and Python"

# 結(jié)果:Hello world and itcast and itheima and python
print(mystr.capitalize())

# 結(jié)果:Hello World And Itcast And Itheima And Python
print(mystr.title())

# 結(jié)果:hello world and itcast and itheima and python
print(mystr.lower())

# 結(jié)果:HELLO WORLD AND ITCAST AND ITHEIMA AND PYTHON
print(mystr.upper())
  • lstrip():刪除字符串左側(cè)空白字符
  • rstrip():刪除字符串右側(cè)空?字符
  • strip():刪除字符串兩側(cè)空白字符


在這里插入圖片描述

  • ljust():返回一個(gè)原字符串左對(duì)齊,并使用指定字符(默認(rèn)空格)填充?至對(duì)應(yīng)?度的新字符串。

語法:字符串序列.ljust(?度, 填充字符)

  • rjust():返回?個(gè)原字符串右對(duì)?,并使?指定字符(默認(rèn)空格)填充?至對(duì)應(yīng)?度的新字符串,語法和ljust()相同。
  • center():返回?個(gè)原字符串居中對(duì)齊,并使?指定字符(默認(rèn)空格)填充?對(duì)應(yīng)長度的新字符串,語法和ljust()相同。


在這里插入圖片描述

判斷

  • startswith():檢查字符串是否是以指定?串開頭,是則返回 True,否則返回 False。如果設(shè)置開始和結(jié)束位置下標(biāo),則在指定范圍內(nèi)檢查。
mystr = "hello world and itcast and itheima and Python "
# 結(jié)果:True
print(mystr.startswith('hello'))
# 結(jié)果False
print(mystr.startswith('hello', 5, 20))
  • endswith():檢查字符串是否是以指定?串結(jié)尾,是則返回 True,否則返回 False。如果設(shè)置開始和結(jié)束位置下標(biāo),則在指定范圍內(nèi)檢查。
mystr = "hello world and itcast and itheima and Python"
# 結(jié)果:True
print(mystr.endswith('Python'))
# 結(jié)果:False
print(mystr.endswith('python'))
# 結(jié)果:False
print(mystr.endswith('Python', 2, 20))
  • isalpha():如果字符串至少有?個(gè)字符并且所有字符都是字母則返回 True, 否則返回 False。
  • isdigit():如果字符串只包含數(shù)字則返回 True 否則返回 False。
  • isalnum():如果字符串至少有一個(gè)字符并且所有字符都是字母或數(shù)字則返回 True,否則返回False。
  • isspace():如果字符串中只包含空白,則返回 True,否則返回False。
mystr1 = 'hello'
mystr2 = 'hello12345'
# 結(jié)果:True
print(mystr1.isalpha())
# 結(jié)果:False
print(mystr2.isalpha())
-----------------------------
mystr1 = 'aaa12345'
mystr2 = '12345'
# 結(jié)果: False
print(mystr1.isdigit())
# 結(jié)果:False
print(mystr2.isdigit())
-----------------------------
mystr1 = 'aaa12345'
mystr2 = '12345-'
# 結(jié)果:True
print(mystr1.isalnum())
# 結(jié)果:False
print(mystr2.isalnum())
-----------------------------
mystr1 = '1 2 3 4 5'
mystr2 = ' '
# 結(jié)果:False
print(mystr1.isspace())
# 結(jié)果:True
print(mystr2.isspace())

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

宁海县| 页游| 临邑县| 福建省| 拜城县| 麦盖提县| 汤原县| 尼木县| 景德镇市| 西宁市| 鹤山市| 呼图壁县| 开鲁县| 平南县| 西林县| 香格里拉县| 嘉祥县| 乐亭县| 肥东县| 汝州市| 平潭县| 军事| 赣榆县| 浮梁县| 刚察县| 毕节市| 福州市| 长兴县| 合水县| 遵义市| 芦山县| 齐河县| 哈密市| 昆明市| 衡南县| 东港市| 旬阳县| 莱州市| 涪陵区| 虎林市| 清新县|