2014-03-24 66 views
14

我有一個約50個字符串的列表,其中包含一個整數,表示它們在文本文檔中出現的頻率。我已經格式化了它,如下所示,並且試圖創建這個信息的字典,第一個字是值,關鍵字是它旁邊的數字。Python將對象列表轉換爲字典

string = [('limited', 1), ('all', 16), ('concept', 1), ('secondly', 1)] 

的代碼,我到目前爲止有:

my_dict = {} 
for pairs in string: 
    for int in pairs: 
     my_dict[pairs] = int 
+3

「字符串」可能不是該對象的名稱的好選擇。 –

+0

[Python:將鍵值元組列表轉換爲字典的可能的副本?](http://stackoverflow.com/questions/6586310/python-convert-list-of-key-value-tuples-into-dictionary) –

回答

32

這樣,Python的dict()功能完美的設計轉換tuplelist一個s,這是你必須:

>>> string = [('limited', 1), ('all', 16), ('concept', 1), ('secondly', 1)] 
>>> my_dict = dict(string) 
>>> my_dict 
{'all': 16, 'secondly': 1, 'concept': 1, 'limited': 1} 
+0

來吧,這需要在文檔中。這就像,你會嘗試通過反覆試驗的第一件事。 –

10

只需致電dict()

>>> string = [('limited', 1), ('all', 16), ('concept', 1), ('secondly', 1)] 
>>> dict(string) 
{'limited': 1, 'all': 16, 'concept': 1, 'secondly': 1} 
1

該變量是string變量對的列表。這意味着你可以做一些類似的事情:

string = [...] 
my_dict = {} 
for k, v in string: 
    my_dict[k] = v 
+0

這可以用字典理解只用一行來完成。 –

+1

@AlexThornton我知道。但是由於看起來OP只是從Python開始,我認爲逐漸開發他的解決方案是一個好主意。對於用Python開始編程的人來說,字典可能看起來很神奇...... – vz0

相關問題