如何将此列表转换为字典

时间:2015-11-20 10:28:27

标签: python list dictionary

我目前的列表看起来像这样

list =  [['hate', '10'], ['would', '5'], ['hello', '10'], ['pigeon', '1'], ['adore', '10']]

我想将它转换为像这样的词典

dict = {'hate': '10', 'would': '5', 'hello': '10', 'pigeon': '1', 'adore': '10'}

所以基本上list [i][0]将是关键,而list [i][1]将是值。任何帮助将非常感激:)

3 个答案:

答案 0 :(得分:9)

使用dict构造函数:

In [1]: lst =  [['hate', '10'], ['would', '5'], ['hello', '10'], ['pigeon', '1'], ['adore', '10']]

In [2]: dict(lst)
Out[2]: {'adore': '10', 'hate': '10', 'hello': '10', 'pigeon': '1', 'would': '5'}

请注意,从您的编辑开始,您似乎需要将值设置为整数而不是字符串(例如'10'),在这种情况下,您可以将每个内部列表的第二项投射到int之前将它们传递给dict

In [3]: dict([(e[0], int(e[1])) for e in lst])
Out[3]: {'adore': 10, 'hate': 10, 'hello': 10, 'pigeon': 1, 'would': 5}

答案 1 :(得分:1)

你可以这样做:

import numpy as np

array = np.array(list)
for i in xrange(len(list)):
    dict[array[i][0]] = array[i][1]

给出:

>>> dict
{'pigeon': '1', 'hate': '10', 'hello': '10', 'would': '5', 'adore': '10'}

答案 2 :(得分:0)

describe-key

外线:

list =  [['hate', '10'], ['would', '5'], ['hello', '10'], ['pigeon', '1'], ['adore', '10']]

new_dict = dict(list)