我很难理解这是怎么发生的。当我运行以下命令时:
def find_in_string(string, ch):
count = 0
index = 0
while 0 <= index < len(string):
if string.find(string, ch, index) != -1:
return True
find_in_string('asdfasdf', 's')
我得到的是:
^{pr2}$但是,通过解释器运行如下:
index = 0
if string.find('asdfasdf', 's', index) != -1:
return True
它返回“True”。所以我不明白字符串。查找没有为上述函数中的起始索引传递一个整数。有什么建议吗!在
编辑: 不管出于什么原因,在再次导入字符串之后,上面的函数现在可以工作了。也许咖啡太多了?在
您的误解似乎来自导入
string
模块以及命名变量string
。在您不需要导入模块来使用
find
,而且如果您确实需要导入模块来执行其他操作,则可以将变量命名为其他名称。在类型是}。在
str
不是{^{} 不是这样工作的。你是说
如果变量名为
^{pr2}$string
或如果您的变量名为
string
,并且您确实想在类/类型str
上访问它(没有理由)。在在搜索的字符串上调用}索引。因为您似乎在搜索整个字符串,所以可以省略它们。在
find
,除非访问类/类型上的find
,否则不会手动将字符串传递给find
。find
第一个手动传递的参数是要搜索的字符串,后跟start
和{相关问题 更多 >
编程相关推荐