Python中find()的用法小結(jié)
Python中find()函數(shù)是字符串對象的方法,只能在字符串上調(diào)用,用于檢測查詢字符串中的目標(biāo)字符(串),并返回索引。有目標(biāo)字符(串),則返回目標(biāo)字符(串)第一次出現(xiàn)的索引(字符串中字符索引從左到右,從0開始計算);無目標(biāo)字符(串),則返回 -1。
語法:str.find(string,start,end)
str:待查詢的字符串。
string:待檢測的目標(biāo)字符(串),可為單個字符或多個字符組成的字符串。
start:從待查詢的字符串中搜索的起始位置,可不填,但不能空置,不填時為0。
end:從待查詢的字符串中搜索的結(jié)束位置,有end必須要有start,否則會報錯;可不填,不填時為字符串長度。
實例
實例一、簡單字符查找
1、查找待查詢字符串中目標(biāo)字符,返回目標(biāo)字符的索引。
s="Hello Word!"
a="o"
print("字符o在字符串中的索引為:",s.find(a))#輸出結(jié)果為字符o在字符串中的索引為: 42、查找待查詢字符串固定位置目標(biāo)字符,返回目標(biāo)字符的索引。
s="Hello Word!"
a="o"
print("字符o在字符串中的索引為:",s.find(a,0,4))#輸出結(jié)果為字符o在字符串中的索引為: -1
print("字符o在字符串中的索引為:",s.find(a,6,8))#輸出結(jié)果為字符o在字符串中的索引為: 7
print("字符o在字符串中的索引為:",s.find(a,1))#輸出結(jié)果為字符o在字符串中的索引為: 4
3、查找待查詢字符串中所有符合條件的字符(串),并返回字符串索引 。
s="Hello Word!"#定義字符串
start_index=0#初始化起始位置
while True:
index=s.find("o",start_index)
if index==-1:
break
else:
print("字符o的索引位置為:",index)
start_index=index+1#更新起始位置
'''
輸出結(jié)果為:
字符o的索引位置為: 4
字符o的索引位置為: 7
'''4、查找條件填寫錯誤
s="Hello Word!"
a="o"
print("字符o在字符串中的索引為:",s.find(a,,10))#start位置空置未填寫數(shù)據(jù)導(dǎo)致運行報錯
'''
File "e:110701.py", line 3
print("字符o在字符串中的索引為:",s.find(a,,10))#輸出結(jié)果為字符o在字符串中的索引為: -1
^
SyntaxError: invalid syntax
'''實例二、結(jié)合if語句進行實踐
過7游戲
一圈人從1開始報數(shù)循環(huán),逢7的倍數(shù)或數(shù)字中包含7不能喊具體數(shù)字,以鼓掌一次形式跳過,喊出數(shù)字或未鼓掌一次跳過視為違規(guī),需要接受懲罰。
簡化一下,輸入一個整數(shù),計算小于這個數(shù)字中所有符合條件的數(shù)字并統(tǒng)計數(shù)量。
n=int(input("請輸入數(shù)字:"))#input函數(shù)返回的結(jié)果類型為str
num=1
sum=0
while num <= n:
if num % 7==0 or str(num).find("7")!=-1:
print(str(num) + " pass")
sum+=1
else:
pass
num+=1
print("sum =",sum)
print("#"*20)
'''
輸入數(shù)字30,結(jié)果為:
請輸入數(shù)字:30
7 pass
14 pass
17 pass
21 pass
27 pass
28 pass
sum = 6
####################
'''實例三、結(jié)合for語句進行實踐
瑕疵產(chǎn)品篩選
有一批產(chǎn)品已歸類,產(chǎn)品列表中編號100-109,分為優(yōu)、良和劣三個等級,順序為:優(yōu)上、良上、良中、劣上、劣中、優(yōu)中、優(yōu)下、劣下、良中、劣下,請篩選出劣品的產(chǎn)品編號。
#定義字典
Products={100:"優(yōu)上",101:"良上",102:"良中",103:"劣上",104:"劣中",105:"優(yōu)中",106:"優(yōu)下",107:"劣下",108:"良中",109:"劣下"}
values=Products.values()#取出所有值
full_list=[]#創(chuàng)建空列表
#取出所有符合條件的值,添加到列表中,并去重
for value in list(values):
if value.find("劣")!=-1:
full_list.append(value)
set_list=set(full_list)
#找出所有符合條件的產(chǎn)品及編號
for x in range(100,110):
for y in set_list:
if Products.get(x)==y:
print("產(chǎn)品%s為劣品,劣品編號為%s"%(y,x))
'''
輸出內(nèi)容為:
產(chǎn)品劣上為劣品,劣品編號為103
產(chǎn)品劣中為劣品,劣品編號為104
產(chǎn)品劣下為劣品,劣品編號為107
產(chǎn)品劣下為劣品,劣品編號為109
'''到此這篇關(guān)于Python中find()的用法小結(jié)的文章就介紹到這了,更多相關(guān)Python find()用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python?的counter()函數(shù)解析與示例詳解
在?Python?中,?collections?模塊提供了?Counter?類,用于計算可迭代對象中元素的數(shù)量,?Counter?是一個字典的子類,它以元素作為鍵,以元素出現(xiàn)的次數(shù)作為值進行計數(shù),本文給大家介紹Python?的counter()函數(shù),感興趣的朋友一起看看吧2023-08-08
Python 安裝和配置flask, flask_cors的圖文教程
這篇文章主要介紹了Python 安裝和配置flask, flask_cors的圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-04-04
python默認(rèn)參數(shù)調(diào)用方法解析
這篇文章主要介紹了python默認(rèn)參數(shù)調(diào)用方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02

