在字符串中查找字符串(子字符串)在日常生活中有很多用途。Python使用函数index()实现了这一点,该函数返回字符串中第一个出现的子字符串的位置。
null
语法:
总索引(ch1,begp,endp)
参数:
- ch1: 要搜索的字符串。
- begp(默认值:0): 此函数指定搜索必须从哪里开始的位置。
- endp(默认值:string_len): 此函数指定搜索结束的位置。
返回值:
返回找到的子字符串的第一个位置。
例外情况:
如果未找到参数字符串,则引发ValueError。
例1
python
# Python code to demonstrate the working of # index() # initializing target string ch = "geeksforgeeks" # initializing argument string ch1 = "geeks" # using index() to find position of "geeks" # starting from 2nd index # prints 8 pos = ch.index(ch1, 2 ) print ( "The first position of geeks after 2nd index : " ,end = "") print (pos) |
输出:
The first position of geeks after 2nd index : 8
注: index()方法类似于 查找() 。唯一的区别是,如果未找到搜索的字符串,则find()返回-1,在这种情况下,index()抛出异常。
例2:例外
ValueError: 如果在目标字符串中找不到参数字符串,则会引发此错误。
python
# Python code to demonstrate the exception of # index() # initializing target string ch = "geeksforgeeks" # initializing argument string ch1 = "gfg" # using index() to find position of "gfg" # raises error pos = ch.index(ch1) print ( "The first position of gfg is : " ,end = "") print (pos) |
输出:
Traceback (most recent call last): File "/home/aa5904420c1c3aa072ede56ead7e26ab.py", line 12, in pos = ch.index(ch1) ValueError: substring not found
例3
实际应用: 此函数用于提取 在目标词之后或之前的后缀或前缀长度 .下面的示例以字符串形式显示来自交流电压给定信息的指令的总位长。
python
# Python code to demonstrate the application of # index() # initializing target strings voltages = [ "001101 AC" , "0011100 DC" , "0011100 AC" , "001 DC" ] # initializing argument string type = "AC" # initializing bit-length calculator sum_bits = 0 for i in voltages : ch = i if (ch[ len (ch) - 2 ]! = 'D' ): # extracts the length of bits in string bit_len = ch.index( type ) - 1 # adds to total sum_bits = sum_bits + bit_len print ( "The total bit length of AC is : " ,end = "") print (sum_bits) |
输出:
The total bit length of AC is : 13
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END