我试图找一些例子,但没有运气。有谁知道网上的一些例子?我想知道它找不到什么,以及如何从头到尾指定,我猜这将是0,-1。
答案 0 :(得分:109)
我不确定你在寻找什么,你的意思是find()
吗?
>>> x = "Hello World"
>>> x.find('World')
6
>>> x.find('Aloha');
-1
答案 1 :(得分:42)
您也可以使用str.index
:
>>> 'sdfasdf'.index('cc')
Traceback (most recent call last):
File "<pyshell#144>", line 1, in <module>
'sdfasdf'.index('cc')
ValueError: substring not found
>>> 'sdfasdf'.index('df')
1
答案 2 :(得分:30)
来自here:
str.find(sub [,start [,end]])
返回找到substring sub的字符串中的最低索引,这样sub包含在[start,end]范围内。可选参数start和end被解释为切片表示法。如果未找到sub,则返回-1。“
所以,举个例子:
>>> str = "abcdefioshgoihgs sijsiojs "
>>> str.find('a')
0
>>> str.find('g')
10
>>> str.find('s',11)
15
>>> str.find('s',15)
15
>>> str.find('s',16)
17
>>> str.find('s',11,14)
-1
答案 3 :(得分:17)
老实说,这就是我在命令行上打开Python并开始搞乱的情况:
>>> x = "Dana Larose is playing with find()"
>>> x.find("Dana")
0
>>> x.find("ana")
1
>>> x.find("La")
5
>>> x.find("La", 6)
-1
Python的解释器使这种实验变得容易。 (对于具有类似翻译的其他语言也是如此)
答案 4 :(得分:6)
如果要在文本中搜索字符串的最后一个实例,可以运行rfind。
示例:
s="Hello"
print s.rfind('l')
输出:3
*无需导入
完整语法:
stringEx.rfind(substr, beg=0, end=len(stringEx))
答案 5 :(得分:2)
find( sub[, start[, end]])
返回找到substring sub的字符串中的最低索引,这样sub包含在[start,end]范围内。可选参数start和end被解释为切片表示法。如果未找到sub,则返回-1。
来自the docs。
答案 6 :(得分:0)
试试这个:
with open(file_dmp_path, 'rb') as file:
fsize = bsize = os.path.getsize(file_dmp_path)
word_len = len(SEARCH_WORD)
while True:
p = file.read(bsize).find(SEARCH_WORD)
if p > -1:
pos_dec = file.tell() - (bsize - p)
file.seek(pos_dec + word_len)
bsize = fsize - file.tell()
if file.tell() < fsize:
seek = file.tell() - word_len + 1
file.seek(seek)
else:
break
答案 7 :(得分:0)
如果x是一个字符串,你搜索y也是一个字符串,它们是两种情况: 案例1: y存在于x中,因此 x.find(y) = x中y的索引(位置)。 案例2: y不存在,因此 x.find(y) = -1这意味着在x中找不到y。
答案 8 :(得分:0)
尝试
myString = 'abcabc'
myString.find('a')
这将为您提供索引!