字典实战——字典用法说明——对稀疏的数据结构使用字典:元组键

未匹配的标注

类似地,字典键还常被利用来实现稀疏的数据结构——比如,只有少数位置有值存储在内的多维数组:

>>> Matrix = {}
>>> Matrix[(2, 3, 4)] = 88
>>> Matrix[(7, 8, 9)] = 99
>>>
>>> X = 2; Y = 3; Z = 4 # ; separates statements: see Chapter 10
>>> Matrix[(X, Y, Z)]
88
>>> Matrix
{(2, 3, 4): 88, (7, 8, 9): 99}

这里,使用字典来表示一个空的(除了两个位置(2,3,4)和(7,8,9))三维数组。这些键是记录非零插槽坐标的元组。可以使用一个只有两个项目的字典,而非分配一个大的,大部分是空的三维矩阵来保存这些值。在这个方案中,访问一个空插槽会触发不存在键的异常,因为这些插槽在物理上并没有被存储:

>>> Matrix[(2,3,6)]
Traceback (most recent call last):
File "<stdin>", line 1, in ?
KeyError: (2, 3, 6)

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~