字符串replace()无法按预期工作

Sea*_*Xie 0 python replace find

replace()在python中遇到了一些麻烦。这是我的代码:

string = input()
word = string.find('word')
if word >= 1:
    string = string.replace('word', 'word.2')
print(string)
Run Code Online (Sandbox Code Playgroud)

输出结果为word。不是word.2吗?我糊涂了。有什么帮助吗?

编辑:经过一段时间解决问题后,我发现问题现在是“为什么string.find('word')输入等于0 word

the*_*ces 6

代替

word >= 1
Run Code Online (Sandbox Code Playgroud)

word >= 0
Run Code Online (Sandbox Code Playgroud)

string.find()返回单词的首次出现。如果您的字符串是'word'并且找到'word',它将返回0,因为单词'word'首先出现在索引0处。

在python中,数组从0开始。字符串中的第一个字符在索引0处。

因此,“单词”中的“单词”位于第一个位置,即0。