带有字符串索引的Python 2 Dimension Array(Matrix)

时间:2013-01-17 16:12:36

标签: python data-structures dictionary matrix

在Python(2.7)中,是否存在可通过基于字符串的索引访问的本地二维数据结构?

我知道您可以使用字符串索引访问字典,例如:

>>> dic = dict()
>>> dic['grumpy'] = 'cat'
>>> print(dict['grumpy'])
'cat'

但我想要的是一个可以访问的数据结构:

>>> dic['grumpy']['frumpy'] = 'cat'
>>> print(dict['grumpy']['frumpy'])
'cat'

数组似乎是禁止的,因为它只允许基于整数的访问...任何建议?谢谢!

1 个答案:

答案 0 :(得分:8)

使用defaultdict

from collections import defaultdict

nesteddict = defaultdict(dict)

nesteddict['abc']['spam'] = 'ham'

请注意,您描述的是一个简单的嵌套结构;你也可以在不使用defaultdict的情况下构建它,但是这个类使得它更容易实现。