在Python中,hashmap的等價物是Dict
(實際上,大多數Dict
的實現都是hashmaps)。爲確保跨實現的排序,您需要使用OrderedDict
。 A List
相當於一個向量。因此,你想要的是Lists
一個OrderedDict
。
from collections import OrderedDict
// Create the dictionary
d = {'A1': [1, 2], 'B2': [2, 3]}
// Order it by key
m = OrderedDict(sorted(d.items(), key=lambda t: t[0]))
// Example of appending to one of the lists
m['A1'].append(3)
print(m)
這將打印:
OrderedDict([('A1', [1, 2, 3]), ('B2', [2, 3])])
您還可以添加含有這樣的列表附加鍵:
m["B2"] = [2, 3, 5, 7]
然後,您將需要重新排序OrderedDict
。
A小調注:Dicts
Python中是沒有順序;他們碰巧在CPython 3的新版本中訂購,但這是一個實現細節。因此,OrderedDict
是最適用的數據結構在這裏,以確保您的代碼是便攜式的。我提到這一點是因爲很多人都對CPython的這個特性感到非常興奮,但它並不能保證在任何地方都能正常工作。