gpt4 book ai didi

python - 使用递归 Python 计算项目在序列中出现的次数

转载 作者:太空宇宙 更新时间:2023-11-04 10:15:01 25 4
gpt4 key购买 nike

我正在尝试计算某个项目在序列中出现的次数,无论它是数字列表还是字符串,它对数字都适用,但在尝试查找像 这样的字母时出现错误"i" 在一个字符串中:

def Count(f,s):
if s == []:
return 0
while len(s) != 0:
if f == s[0]:
return 1 + Count(f,s[1:])
else:
return 0 + Count(f,s[1:])

TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'

最佳答案

有一种比使用递归更为惯用的方法:使用内置的 count 方法来计算出现次数。

def count(str, item):
return str.count(item)
>>> count("122333444455555", "4")
4

但是,如果您想通过迭代 来做到这一点,您可以应用类似的原则。将其转换为列表,然后遍历列表。

def count(str, item):
count = 0
for character in list(str):
if character == item:
count += 1
return count

关于python - 使用递归 Python 计算项目在序列中出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35895724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com