输入一个嵌套列表,再输入层数,求该层的数字元素个数。
第一行输入列表
第二行输入层数
在一行中输出元素个数
在这里给出一组输入。例如:
- [1,2,[3,4,[5,6],7],8]
- 3
在这里给出相应的输出。例如:
2
调用一次函数层数加一,当前层数与目标层数相同时识别元素是否为数字,识别到一个数字就存入列表,最后返回列表长度就行了
- def iteration(lst, ceng, count):
- num = 0
- if ceng == count: # 求该层的数字元素个数
- num += len([i for i in lst if type(i) is int])
- for i in lst:
- if isinstance(i, list):
- num += iteration(i, ceng, count+1)
- return num
-
-
- # 第一行输入列表,第二行输入层数,调用函数计算并打印结果
- print(iteration(eval(input()), eval(input()), 1))