高义校长 发表于 2020-4-4 21:51:19

数组计算问题(新)

请问各位大佬:
有2个数组:
a=[,,,5]
b=[,,,5,6]

怎么能得到数组c:
[,,,10,6]

数组c也可以变成
[,,,,]
能否两种都给写一代码,非常感谢。

倒戈卸甲 发表于 2020-4-4 22:01:41

感觉步骤有点多啊,不想动手=_=

高义校长 发表于 2020-4-4 22:03:31

倒戈卸甲 发表于 2020-4-4 22:01
感觉步骤有点多啊,不想动手=_=

辛苦一下啊,哈哈。我看他们用帝归不是2行就搞定了啊。我不会,大佬费心。

高义校长 发表于 2020-4-4 22:05:09

倒戈卸甲 发表于 2020-4-4 22:01
感觉步骤有点多啊,不想动手=_=

其实前面我问过类似的问题,大佬给出了答案,但是我感觉我悟性不够啊。
https://fishc.com.cn/thread-163560-1-1.html

sunrise085 发表于 2020-4-4 22:26:32

本帖最后由 sunrise085 于 2020-4-4 22:29 编辑

def fun(a,b):
        c=[]
        if len(a)<=len(b):
                a,b=b,a
        for i in range(len(a)):
                if i<len(b):
                        if type(a)==list:
                                c.append(fun(a,b))
                        else:
                                c.append(a+b)
                else:
                        c.append(a)
        return c

a=[,,,5]
b=[,,,5,6]
print(fun(a,b))

高义校长 发表于 2020-4-4 22:33:24

sunrise085 发表于 2020-4-4 22:26


非常感谢您。
能否请教一下,您这个能扩展吗?
如果有a,b,c,d或者N多列表呢

sunrise085 发表于 2020-4-4 22:42:16

高义校长 发表于 2020-4-4 22:33
非常感谢您。
能否请教一下,您这个能扩展吗?
如果有a,b,c,d或者N多列表呢

没太明白,N多列表是啥意思
意思是不一定只有a b,也可能是a b c d……合成m
是这个意思吗?
那样的话,这个函数肯定不行,这个函数这不是只有两个参数么。
需要在此基础之上进行修改完善。
我是在手机上码字的 ,很不方便码代码,你自己按照这个基础版本需要一下吧。或者等其他人回答吧。

高义校长 发表于 2020-4-4 22:52:10

sunrise085 发表于 2020-4-4 22:42
没太明白,N多列表是啥意思
意思是不一定只有a b,也可能是a b c d……合成m
是这个意思吗?


非常感谢您。
https://fishc.com.cn/thread-163560-1-1.html
您这个也能解决我的问题的,就是改起来比较麻烦。
其实我是想用这个写个递归,然后就可以扩展了,但是就是始终写不对。

sunrise085 发表于 2020-4-4 22:56:43

高义校长 发表于 2020-4-4 22:52
非常感谢您。
https://fishc.com.cn/thread-163560-1-1.html
您这个也能解决我的问题的,就是改起来比 ...

这里也用到递归了啊,第八行,若该元素是list则递归
页: [1]
查看完整版本: 数组计算问题(新)