我將約400萬個不同的密鑰放入Python字典中。 創建此字典需要大約15分鐘,並在我的機器上消耗大約4GB的內存。字典完全創建後,查詢字典很快。如何在Python中設置字典的初始大小?
我懷疑字典創建是非常耗費資源的,因爲字典經常被重新編譯(隨着它的增長)。 是否可以創建一個Python的字典與一些初始大小或桶號?
我的字典從一個數字指向一個對象。
class MyObject(object):
def __init__(self):
# some fields...
d = {}
d[i] = MyObject() # 4M times on different key...
非常類似於http://stackoverflow.com/questions/311775/python-create-a-list-dict-with-initial-capacity – 2009-08-19 09:13:52
你能讓我們知道你的密鑰的來源/格式,所以我們可以改進an魚? – 2009-08-19 09:39:44
它是一個數字的關鍵 – tkokoszka 2009-08-19 10:09:11