def rsum(list1):
if len(list1) == 1:
return list1[0]
else:
first_value = list1[0]
other_value = rsum(list1[1:])
value = first_value + other_value
return value
现在有这个函数, 能求list中数字的和
要弄成能计算list中list得数字的和, 例如【1,2,【3,4,【5】】,6】的和
多谢帮助!
Python代码修改
答案:2 悬赏:80 手机版
解决时间 2021-02-10 05:07
- 提问者网友:椧運幽默
- 2021-02-09 05:28
最佳答案
- 五星知识达人网友:大漠
- 2021-02-09 06:05
def rsum(list1):
if isinstance(list1,list):
if len(list1) == 1:
return rsum(list1[0])
else:
first_value = list1[0]
other_value = rsum(list1[1:])
value = rsum(first_value) + other_value
return value
else:
return list1
a = [[1,2],[3,[4,[5]]],6]
print(rsum(a))有必要吗。。没必要递归啊,太繁了。。。
if isinstance(list1,list):
if len(list1) == 1:
return rsum(list1[0])
else:
first_value = list1[0]
other_value = rsum(list1[1:])
value = rsum(first_value) + other_value
return value
else:
return list1
a = [[1,2],[3,[4,[5]]],6]
print(rsum(a))有必要吗。。没必要递归啊,太繁了。。。
全部回答
- 1楼网友:不甚了了
- 2021-02-09 07:21
在python中有两种编写代码的形式:
1. shell形式:一次只能执行一条完整语句,包括 if判断,for的循环,或者定义一个class,定义一个函数等等,这种很不灵活,容易出现所述现象:
2. edit形式:将要写的代码保存到一个py文件里面,执行的代码无限制;
打开方法为:file-new window:
3. 使用edit模式,可以避免遇到的问题。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯