python中index()、find()方法


index() 方法檢測字符串中是否包含子字符串 str ,如果指定 beg(開始) 和 end(結束) 范圍,則檢查是否包含在指定范圍內,該方法與 python find()方法一樣,只不過如果str不在 string中會報一個異常。影響后面程序執行

index()方法語法:str.index(str, beg=0, end=len(string))

  • str -- 指定檢索的字符串
  • beg -- 開始索引,默認為0。
  • end -- 結束索引,默認為字符串的長度。
    str1='python is on the way']
    str2='on'
    #空格,等其他操作符對其索引位置也有影響
    #在str1中檢測字符串中是否含有子字符串str2  str1.index(str2,beg=0,end=len(str1))
    
    #如果包含子字符串 返回檢測到的索引值
    print(str1.index(str2))
    
    #從索引1開始檢測,檢測長度為3
    print(str1.index(str2,1,3))

     

如果包含子字符串返回開始的索引值,否則拋出異常。

user_name = ['xiaolei','xiaoman','lixia']
pass_word = ['123','456','789']
username = input('username:').strip()
password = input('password:').strip()
if username in user_name and password == pass_word[user_name.index(username)]:
  
print(f"登錄成功,歡迎您:{username}")
else:
  print("錯誤!")
若輸入:username == xiaolei
user_name.index(username) == 0
所以:password == pass_word[0] == 123

 

Python find()方法,不能用於列表list

str.find(str, beg=0, end=len(string))
  • str -- 指定檢索的字符串
  • beg -- 開始索引,默認為0。
  • end -- 結束索引,默認為字符串的長度。
Python find() 方法檢測字符串中是否包含子字符串 str ,如果指定 beg(開始) 和 end(結束) 范圍,則檢查是否包含在指定范圍內,
如果包含子字符串返回開始的索引值,否則返回-1。不影響后面程序執行
str1='python is on the way'

str2='on'
str3='nice'

print(str1.index(str2))

#不在字符串str1中
print(str1.find(str3))

#從索引1開始檢測,檢測長度為3
print(str1.find(str2,1,3))
 
        

運行結果:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM