您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關python在字符串中如何查找指定字符的多個索引的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
Python中查找字符串指定字符的常用方法有find()、index()。
用法:
str = 'abcd' print(str.find('c')) #輸出即為查找指定字符的索引值 print(str.index('c')) #輸出即為查找指定字符的索引值
區別:
當指定字符在該字符串中不存在時,find輸出為-1.index則會報錯,如下:
str = 'abcd' print(str.find('f')) #-1 print(str.index('f')) #ValueError: substring not found
缺點:
find()和index()只能找到第一個索引值。如果指定字符同時存在多個,只會輸出第一個指定字符的索引值。
需要說明的是:Python并沒有內置方法可直接解決這個問題。所以需要自己定義一個方法去解決這個問題。
lstKey = [] #定義空列表用于存儲多個指定字符的索引 lengthKey = 0 str = input('字符串:') key = input('要查找的關鍵字:') #字符串中存在指定字符串的個數 countStr = str.count(key) #利用獲取的countStr進行判斷 if countStr < 1: print('該字符串中無要查找的字符') elif countStr == 1: #當字符串中只有一個指定字符時,直接通過find()方法即可解決 indexKey = str.find(key) print('查找的關鍵字的索引為:',indexKey) else: #當字符串中存在多個指定字符的處理方法 #第一個指定字符的處理方法 indexKey = str.find(key) lstKey.append(indexKey) #將第一個索引加入到lstKey列表中 #其余指定字符的處理方法 while countStr > 1: #將前一個指定字符之后的字符串截取下來 str_new = str[indexKey+1:len(str)+1] #獲取截取后的字符串中前一個指定字符的索引值 indexKey_new = str_new.find(key) #后一個索引值=前一個索引值+1+indexkey_new indexKey = indexKey+1 +indexKey_new #將后發現的索引值加入lstKey列表中 lstKey.append(indexKey) countStr -= 1 print('查找的關鍵字的索引為',lstKey)
感謝各位的閱讀!關于python在字符串中如何查找指定字符的多個索引就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。