【Python】求指定层的元素个数


代码思路仅供参考,欢迎大家批评指正!


目录

  • 7-7 求指定层的元素个数
    • 输入格式
    • 输出格式
    • 输入样例
    • 输出样例
    • 思路
    • 代码


7-7 求指定层的元素个数

输入一个嵌套列表,再输入层数,求该层的数字元素个数。

输入格式

第一行输入列表
第二行输入层数

输出格式

在一行中输出元素个数

输入样例

[1,2,[3,4,[5,6],7],8]
3

输出样例

2

思路

利用递归函数实现

代码

# By jurio.
def num_fun(l, layer, n):
    sum = 0
    layer += 1
    if layer < n:
        for i in l:
            if isinstance(i, list):
                sum += num_fun(i, layer, n)
    else:
        for i in l:
            if isinstance(i, int):
                sum += 1
    return sum

lst = list(eval(input()))
layer_n = int(input())
layers = 0
print(num_fun(lst, layers, layer_n))

你可能感兴趣的:(Python_PTA,python)