python求列表中所有数字和,列表中嵌套层次不限2层,在一行中输入列表或元组,在一行中输出数字的和
时间: 2024-02-23 09:58:19 浏览: 196
python3代码输出嵌套式对象实例详解
可以使用递归的思想来遍历嵌套的列表,对于每一个元素,判断其类型,如果是数字就将其加入总和中,如果是列表则递归处理。
下面是一个实现:
```python
def sum_nested(lst):
total = 0
for item in lst:
if isinstance(item, int):
total += item
elif isinstance(item, list) or isinstance(item, tuple):
total += sum_nested(item)
return total
# 示例输入和输出
print(sum_nested([1, 2, [3, 4], 5])) # 输出 15
print(sum_nested([[1, 2], [3, [4, 5]], 6])) # 输出 21
```
在一行输入和输出的版本:
```python
import ast
lst = ast.literal_eval(input())
print(sum_nested(lst))
```
阅读全文