gpt4 book ai didi

python - 递归计算嵌套数字列表中的出现次数

转载 作者:行者123 更新时间:2023-11-28 20:40:36 25 4
gpt4 key购买 nike

我终于开始使用 Python 进行递归并尝试计算目标数字在 list 中出现的次数。但是,我遇到了计算嵌套数字 list 中出现次数的问题。

例如

def count(lst, target):

if lst == []:
return 0
if lst[0] == target:
return 1 + count(lst[1:], target)
else:
return 0 + count(lst[1:], target)

输出

>>> count( [1,2,3,[4,5,5],[[5,2,1],4,5],[3]], 1 )

输出:1

预期输出:2

有没有一种简单的方法可以在 Python 中展平嵌套列表?或者我可以用一种简单的方法来解释我的代码中存在嵌套列表这一事实?

最佳答案

def count(lst, target):
n = 0
for i in lst:
if i == target:
n += 1
elif type(i) is list:
n += count(i, target)
return n

关于python - 递归计算嵌套数字列表中的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35448323/

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