在python数组中存储多个值?

爱喵

我想在python数组中存储多个值(我也对其他任何数据结构都开放)。

例如 :

array[1][2][3] = 1  # (this is what I am able to do now)

但是后来我也得到了值2,现在我不是想使用相同的索引将其存储在另一个数组中,而是希望做到这一点:

array[1][2][3] = 1,2 

但是我不想像字符串一样连接现有结果,并拆分字符串以获取单个值。

有没有这样做的方法而不必向数组引入另一个维度?

编辑:我想要一种更整洁的方式来存储2个值在同一单元格中。

谢谢

熔化

如果您事先知道所有内容,则可以使用元组。在这里,我将创建数字对(n, n+1)并将它们存储在列表中:

>>> l = [(n,n+1) for n in xrange(0,4)]
>>> l
[(0, 1), (1, 2), (2, 3), (3, 4)]

如果您决定要附加另一个值,则可以。假设您要追加3到元组(1,2)

>>> l[1] = l[1] + (3,)
>>> l
[(0, 1), (1, 2, 3), (2, 3), (3, 4)]

元组是不可变的,因此它们比构造列表快,但是您不能更改实例化的元组-必须替换它。如果您确定您的数据不会更改,请使用元组。如果可以(经常)使用列表。

编辑

如果要从元组中获取值,则可以执行以下操作:

>>> tup = l[0]
>>> tup 
(0, 1)
>>> x, y = tup
>>> x
0
>>> y
1
>>> t, u = l[2] # alternatively
>>> t
2
>>> u
3

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章