对Python中的数字列表求和

发布于 2021-02-02 23:09:01

我有一个数字列表,例如[1,2,3,4,5...],我想计算(1+2)/2第二个,(2+3)/2第三个, (3+4)/2等等。我怎样才能做到这一点?

我想将第一个数字与第二个数字相加并除以2,然后将第二个数字与第三个数字相加并除以2,依此类推。

另外,如何求和一个数字列表?

a = [1, 2, 3, 4, 5, ...]

是吗:

b = sum(a)
print b

得到一个号码?

这对我不起作用。

关注者
0
被浏览
59
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    问题1:因此,你要(element 0 + element 1) / 2, (element 1 + element 2) / 2,,…等等。

    我们列出两个列表:除第一个元素之外的每个元素中的一个,除最后一个元素之外的每个元素中的一个。然后,我们想要的平均值是从两个列表中得出的每对平均值。我们zip过去常常从两个列表中取对。

    我假设即使输入值是整数,你也希望在结果中看到小数。默认情况下,Python进行整数除法:它丢弃余数。要完全划分事物,我们需要使用浮点数。幸运的是,将int除以浮点数将产生一个浮点数,因此我们仅将其2.0用作除数而不是2

    从而:

    averages = [(x + y) / 2.0 for (x, y) in zip(my_list[:-1], my_list[1:])]
    

    问题2:

    的使用sum应该可以正常工作。以下作品:

    a = range(10)
    # [0,1,2,3,4,5,6,7,8,9]
    b = sum(a)
    print b
    # Prints 45
    

    同样,你无需在此过程的每一步都将所有内容分配给变量。print sum(a)效果很好。

    你将必须更确切地确切地写出你所写的内容以及它是如何工作的。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看