python-3.x - count_substring 方法不返回所有子字符串的数量
问题描述
为我的语无伦次的问题道歉,我根本不知道如何更好地表达它。所以基本上我的任务是输出子字符串出现在字符串中的出现次数。例如。“CDC”将在“ABCDCDC”中出现两次,因此我创建的函数的正确输出将是整数 2。但是,我的代码如下:
def count_substring(string, sub_string):
count = 0
for i in range(len(string)):
if string[i].startswith(sub_string):
count += 1
return count
的命令时似乎没有返回 2 的正确输出
print(count_substring("ABCDCDC", "CDC"))
给出。有人可以帮忙吗?
解决方案
def count_substring(string, sub_string):
count = sum(1 for i in range(len(string))
if string.startswith(sub_string, i))
return count
这对我有用
推荐阅读
- java - 即使未在 android 项目中启用 Androidx 库问题
- angular - Angular 8 步进器集合
- javascript - 单击选项列表以使用 Scrapy (Python) 抓取数据
- python - 从shutil导入时无法模拟复制文件
- encryption-asymmetric - 如何在使用云服务时保留对加密密钥的私人控制?
- python - csv 文件的格式作为数据帧的输出
- vue.js - 如何在 vue.js 的 v-loop 中更新计数器?
- javascript - 在 Shinydashboard 中显示 Openweather 小部件
- haskell - Haskell fmap 组成误区
- python-3.x - 在 python 中采用由换行符分隔的不确定输入