我有一个数字列表,如[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得到一个号码?这对我不起作用。
3 回答
慕桂英4014372
TA贡献1871条经验 获得超13个赞
数字总和:
sum(list_of_nums)
使用列表推导计算n和n - 1的一半(如果我有正确的模式):
[(x + (x - 1)) / 2 for x in list_of_nums]
求和相邻元素,例如((1 + 2)/ 2)+((2 + 3)/ 2)+ ...使用reduce和lambdas
reduce(lambda x, y: (x + y) / 2, list_of_nums)
忽然笑
TA贡献1806条经验 获得超5个赞
问题2: 总结一个整数列表:
a = [2, 3, 5, 8]
sum(a)
# 18
# or you can do:
sum(i for i in a)
# 18
如果列表包含整数作为字符串:
a = ['5', '6']
# import Decimal: from decimal import Decimal
sum(Decimal(i) for i in a)
添加回答
举报
0/150
提交
取消