我应该用什么数据结构来表示下表
'a', 1
'b', 2
'c', 3
'd', 4
'e', 5
因此,计算下一行中第二项的总和似乎很自然:
例如,当i=1时
'a', 2
'b', 3
'c', 4
'd', 5
当i=2时
'a', 2+3=5
'b', 3+4=7
'c', 4+5=9
当i=3时
'a', 2+3+4=9
'b', 3+4+5=12
当i=4时
'a', 2+3+4+5=14
我的两个想法:
最初,我将表表示为子列表列表:
lst = [['a', 1],
['b', 2],
['c', 3],
['d', 4],
['e', 5]]
但我不知道如何做上述计算(在一个
自然或直截了当的方式)。sum(lst[0:0+i][1])
不起作用。
关于我的方式的问题是如何表示我的子列表
表中第二列的连续值
lst[0:0+i][1]
不起作用。(并排使用两个支架不起作用吗?)
我有另一个想法,但我不知道如何实现它(有人能指出它是否可以实现吗?)地址:
将上述列表拆分为两个列表,每列对应一个列表。
对第二列列表进行计算
合并第一个列表和第二列列表上的结果。
谢谢。你知道吗
你可以用字典。它们有键和值来存储变量的值。可以将函数和其他变量作为键。你知道吗
对于计算,我不太确定怎么做。。。你可以使用
mydata.itervalues()
获得所有的值,然后重新分配给键,如果你知道如何处理数字的话(我不完全确定数字到底发生了什么)。你知道吗编辑:
因为字典没有排序,所以可以使用^{} 。当它记住插入键时,这可能是一个很好的应用程序。如果您不能使用它,那么内置的^{} 函数也可能很有用。你知道吗
本身并不是一个“数据结构”,但您可以尝试以下方法:
你也可以把整件事都推到一节课上。你知道吗
可以创建以下函数:
示例:
编辑:
基于第二个想法的实现,使用
numpy
:相关问题 更多 >
编程相关推荐