首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >统计单词在字符串中出现的次数

统计单词在字符串中出现的次数
EN

Stack Overflow用户
提问于 2020-04-12 13:28:51
回答 4查看 103关注 0票数 2

我正在练习编写bat代码,问题是找出单词“code”在字符串中出现的次数,但“code”中的字母“d”可以替换任何字母。所以“code”的计数是1,“cope”也是1。我写了一些代码,但它不能工作。我不明白为什么它不能工作。该函数为每一个输入返回0。这是我尝试过的https://codingbat.com/prob/p186048的链接

代码语言:javascript
运行
复制
def count_code(str):
     count = 0
     str = str.lower()
     for x in str:
         if x == ‘c’ and str.find(x) + 1 == “o” and str.find(x) + 3 == “e”:
            count += 1
     return count 
EN

Stack Overflow用户

发布于 2020-04-12 13:57:45

正如Tim提到的,如果你需要一种更简单的方法(不是最有效的方法,而是一种方法),我会在这类任务中使用正则表达式:

代码语言:javascript
运行
复制
import string


text = 'elephant code joke cole coke man'
total = 0
for letter in string.ascii_lowercase:
    total += text.count(f'co{letter}e')
print(f'{total}')

请注意,在您的解决方案尝试中,存在以下情况:

代码语言:javascript
运行
复制
for x in str:

除了在这种情况下应该避免名称冲突str之外,对于1000个字符的文本,您将使用这种方法进行1000次迭代,减少到26次迭代(字母表)。

票数 3
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61167240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档