2015-05-27 47 views
-3

我在想要找出最有效的方式來存儲這些信息並快速檢索它(可能沒有太多處理)。在python中存儲數據的最佳方式

實施例:

'americanexpress'=>{maxchar=>30,special_char=>false,numbers=>true,capital=>true}, 
'discover'=>{maxchar=>29,special_char=>true,numbers=>true,capital=>false} 

我希望能夠訪問說[美國運通]或[發現]分別和其相關聯的數據。

我以爲arrays可能會工作(但單一暗淡,似乎沒有太好的工作),然後我認爲dictionary,但那似乎沒有錯。

任何人都給我一隻手?謝謝。

+5

爲什麼「字典」不適合你? –

+0

因爲你正在使用鍵/值對,字典可能是不可避免的。你能解釋一下爲什麼詞典看起來不對嗎? 你能否解釋一下你更喜歡存儲和檢索數據的速度,以及它是磁盤還是變量? – rask004

+2

我不明白爲什麼這個問題被低估。這是合法的 – qwr

回答

1
d = { 
    'americanexpress': { 
     'maxchar': 30, 
     'special_char': False, 
     'numbers': True, 
     'capital': True 
    }, 
    'discover': { 
     'maxchar': 29, 
     'special_char': True, 
     'numbers': True, 
     'capital': False 
    } 
} 

# Yes, it works 
assert d['americanexpress']['maxchar'] == 30 
assert d['discover']['capital'] is False 

請注意,即使有辦法有相同目的的簡單的語法(如使用類),它通常只是一個syntactic sugar所以性能得不到提高。

您可以使用列表,但然後你失去了命名的項目,或者你可以使用單個變量,如americanexpress_maxchar,但這似乎並不需要。

相關問題