【发布时间】:2014-03-18 08:37:54
【问题描述】:
是否有自动查找字符串的第一个和最后一个索引的函数?我想在不压缩两个索引的情况下进行一次查找。
下面的代码在字符串 'txt' 中查找单词 'best' 的第一个和最后一个索引,但是,它是分开进行的。
>>> _txt='my best friend'
>>> _str='best'
>>> _txt.find(_str) # first index
3
>>> _txt.find(_str[-1]) # last index
6
#Attempt on joining
1) >>>_txt.find(_str),(_str[-1])
(3, 't')
尝试的输出是错误的。
理想输出:
(3,6)
有什么建议吗?
【问题讨论】:
-
我想你想做
_txt.find(_str),_txt.find(_str[-1]),你为什么不直接定义一个带有两个参数的函数或lambda? -
如果输入的是
the best friend怎么办? -
_txt.find(_str[-1])不会像您认为的那样做。在_txt中找到_str的最后一个字符的第一个索引;如果_txt是'aabb'并且_str是'abb',这将给出2,而不是3。 -
@EdChum,thefoutheye 刚刚提出了一个非常重要的观察结果。如果输入是“最好的朋友”,您的建议将不起作用
-
你可以使用正则表达式:试试这个链接stackoverflow.com/questions/8045122/…