假设我有一个列表[1,2,3,4],我想要的是得到前2对的和,并以这种方式打印它们:
[1,2,3,4]
[3,3,4]
[6,4]
[10]
基本上,它应该继续添加列表的前2个元素,然后删除前2个元素并在开始处插入总和,直到列表只包含1个元素。不过,我无法打印相同的内容,只能得到以下内容:
[1,2,3,4]
[3,3,4]
[3,4]
[3]
以下是我的代码:
counter = len(num_arr)
while (counter > 1):
valHold = (sum(num_arr[:2]))
del numArr[:2]
numArr.reverse()
numArr.append(valHold)
numArr.reverse()
print (numArr)
counter -= 1
我真不知道该怎么办。非常感谢你!你知道吗
只需使用切片替换:
正如@niemmi在注释中所说的,修复变量名后,代码运行良好。它不会像你发布的那样运行。你知道吗
可以在列表长度大于1时循环并使用slicing:
印刷品:
相关问题 更多 >
编程相关推荐