如何在Python中查找字符串中的字母

如何在Python中查找字符串中的字母,python,string,Python,String,找出单词“dog”是否在字符串中 我试着做这个代码,但我不知道错误在哪里 y='dogaway' 对于范围内的i(len(y)): 如果y[i:i+2]=“狗”: x=x+1 打印(x) 我期望输出为1,但实际输出为0。更简单: if 'dog' in y: ... 您可以在Python中使用中的成员操作符 'dog' in 'dogaway' 返回True您可以使用count y = 'dogaway' print(y.count('dog')) # Outputs 1 或者,

找出单词“dog”是否在字符串中

我试着做这个代码,但我不知道错误在哪里

y='dogaway'
对于范围内的i(len(y)):
如果y[i:i+2]=“狗”:
x=x+1
打印(x)
我期望输出为1,但实际输出为0。

更简单:

if 'dog' in y:
    ...

您可以在Python中使用
中的
成员操作符

'dog' in 'dogaway'

返回
True
您可以使用
count

y = 'dogaway'
print(y.count('dog')) # Outputs 1
或者,如果您想修复代码,只需在拼接中删除一个即可:

y = 'dogaway'
x = 0
for i in range(len(y) - 3): # Make sure your range accounts for the look ahead
    # In the future add a print to make sure it is doing what you expect:
    # print(y[i:i + 2])
    if y[i:i + 3] == 'dog': # Here you were off by 1
        x = x + 1
print(x)

my_str.find('dog')
将返回索引(如果它位于
str
中)。这不会给出预期的输出。我看到您的评论被提升,我在另一个答案上引用了相同的评论:您不知道这是否是预期的输出,因为“1”可能只是一个用于检查包含的代码是否工作的标志。这就是OP所问的:“找出单词‘dog’是否在字符串中。”这并没有给出预期的输出。他想知道单词dog是否在字符串中。我不认为1很重要,如果你想要的是0或1,只需执行
int(‘dogaway’中的dog’)
@Sayse那么您如何知道它不是预期的输出?问题是:如何在Python中查找字符串中的字母。提供的答案不能解决这个问题吗?谢谢!你的治疗真的帮助了我。我现在提醒大家,在切片y[x:y]时,它从包含x到y(但不包括它)。@DilshanSandhu如果它回答了你的问题,别忘了把它标记为答案。有帮助:)