目录
2. 当要比对的参数sub不存在字符串str中时,find()方法返回-1.
3. start和end超出实际的字符串范围时,find()方法不会报错
描述
字符串find()方法用于检测字符串中是否包含参数字符串。若包含,则返回字符串中第一次出现参数字符串的位置,否则返回-1。也可以指定起始末尾偏移量来指定字符串的范围。
语法与参数
str.find(sub, start, end)
名称 | 含义 | 备注 |
sub | 检测str字符串中是否包含sub字符串 | 字符串参数,不可省略的参数 |
start | 字符串开始查找偏移量 | 整型参数,可省略 |
end | 字符串结束查找偏移量 | 整型参数,可省略 |
举例
1. 省略start和end参数时
>>> "MacBook Pro".find("Pro")
8
>>> "MacBook Pro".find("Pro ")
-1
2. 仅使用start参数
当使用start参数时,表示字符串第start个参数开始寻找sub字符串,并返回结果。
>>> "MacBook Pro".find("Pro", 1)
8
>>> "MacBook Pro".find("Pro", 9)
-1
3. 同时使用start和end
同时使用start和end时,find方法将在字符串第start字符开始,第end-1个字符结束的子串中查找sub字符串,并返回结果。
>>> "MacBook Pro".find("Pro", 1, 11)
8
>>> "MacBook Pro".find("Pro", 1, 3)
-1
注意事项
1. start参数和end参数可以是负整数
start和end可以是负整数,当他们为负数时,表示从字符串倒数第某个索引值。并在索引值区间内查找子串sub。
例如 "MacBook Pro".find("o", -1)表示从倒数第1个字符"o"开始至字符串末尾"o",查找子串"o"位于字符串的第几个字符。
>>> "MacBook Pro".find("o", -1)
10
>>> "MacBook Pro".find("o", 1)
4
2. 当要比对的参数sub不存在字符串str中时,find()方法返回-1.
>>> "MacBook Pro".find("Apple")
-1
3. start和end超出实际的字符串范围时,find()方法不会报错
>>> "MacBook Pro".find("o", -99)
4
>>> "MacBook Pro".find("o", 999, -1)
-1