2014-02-05 27 views
0

我在Python中有一個非常大的字典。 。 。它不是在CodeRunner或Xcode中編譯巨大的字典Python無法正常工作

我有一個不是很大的列表,我試圖翻譯,但它不能正常工作,因爲字典太大了。 。 23124鍵在字典中。 有沒有辦法通過創建數據庫或其他東西來處理大型字典?

當我複製和粘貼我的字典到CodeRunner或在Xcode,顏色沒有爲不同的類型,如字符串或整數元素的改變。

當我運行它,我得到一個較大的輸出比我輸入

#D_ens_g = {"big" dictionary w/ >20k keys and values} 

def Simple_Reader(input,output='test.txt'): 
    temp = [] 

    query=open(input,'r').read().split('\r') 
    for q in query: 
     print D_ens_g[q] 

test_2 = '~/Desktop/list.txt' 
Simple_Reader(test_2) 

列表中的每一個元素,我在test_2導入具有特定ID,它是在字典的鍵

+4

「大」不是一個數字。 – JBernardo

+0

使用真實的數據庫? (甚至像sqlite3或couchdb) –

+0

首先,你真的需要那個大字典嗎? –

回答

0

你真的需要一本大字典嗎?想必你從另一個文件中提取數據。你需要怎樣處理字典?作爲Joran說

+1

這應該是一個評論(我知道你沒有足夠的代表評論,所以我不會downvote ...但它最終會得到downvoted作爲答案) –

0

所以我所做的是我犯了一個文本文件,與「大」的字典,然後我進口AST和無需編譯它在我的應用

使用literal_eval只是閱讀一個真正的數據庫可能是更聰明
import ast 
D_ens_gene = ast.literal_eval(open('/users/opus_magnum/desktop/D_ens_gene.txt','r').read())