python - 我怎样才能让这些代码只返回一次?
问题描述
“假设 s 是一串小写字符。
编写一个程序,打印字符串 'bob' 在 s 中出现的次数。例如,如果 s = 'azcbobobegghakl',那么你的程序应该打印"
到目前为止,这是我的代码。
for i in range(len(s)):
if s[i:i+3] == "bob":
count += 1
print("Number of times bob occurs is: " + str(count))
但是,我不断得到:
bob 出现的次数是:0 bob 出现的次数是:0 bob 出现的次数是:0 bob 出现的次数是:1 bob 出现的次数是:1 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数是:2 bob 出现的次数发生的次数是:2 bob 发生的次数是:2 bob 发生的次数是:2
我试图让它只返回或打印 2。
解决方案
您的代码缩进似乎关闭。不在帖子中,但可能在真实代码中。我试过你的程序,输出只打印了一次。print 语句应该在循环之外,即在相同的缩进级别。
推荐阅读
- python - 是否可以在 Pandas-Python 中无顺序地通过列名获取值?
- c# - 为什么 C# 使用 double 类型而不是 int 类型的函数?
- android - ArCoreApk 检查可用性不适用于 api 30
- python - 在 Python 中计算信号幅度区域
- spring-integration - Spring 集成异步 Http 出站调用
- r - 如何根据其他列在新列上创建值?
- javascript - 如何从 MERN 技术栈中的数据库中检索最后添加的记录?
- r - 将 dgTMatrix 写入 HDF5 文件
- javascript - 我不能以角度调用javascript
- c++ - 如何在调试模式下打印程序中发生的事情