Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python将两个元素元组的列表映射到key:value dict中_Python - Fatal编程技术网

Python将两个元素元组的列表映射到key:value dict中

Python将两个元素元组的列表映射到key:value dict中,python,Python,我有一个rest API端点,它以JSON格式返回可用国家的列表,如: [["ALL","Albania Lek"],["AFN","Afghanistan Afghani"],["ARS","Argentina Peso"],["AWG","Aruba Guilder"],["AUD","Australia Dollar"]] 我需要把它转换成 { "ALL":"Albania Lek", "AFN":"Afghanistan Afghani", "ARS":"Argentina Peso"

我有一个rest API端点,它以JSON格式返回可用国家的列表,如:

[["ALL","Albania Lek"],["AFN","Afghanistan Afghani"],["ARS","Argentina Peso"],["AWG","Aruba Guilder"],["AUD","Australia Dollar"]]
我需要把它转换成

{
"ALL":"Albania Lek",
"AFN":"Afghanistan Afghani",
"ARS":"Argentina Peso"
}
如何快速有效地执行此操作?

构造函数直接从键值对序列构建字典,如中所述。就这么简单:

the_list = [['ALL', 'Albania Lek'],
            ['AFN', 'Afghanistan Afghani'], 
            ['ARS', 'Argentina Peso'], 
            ['AWG', 'Aruba Guilder'],
            ['AUD', 'Australia Dollar']]

dict(the_list)

=> {
     'AWG': 'Aruba Guilder',
     'ALL': 'Albania Lek', 
     'ARS': 'Argentina Peso',
     'AFN': 'Afghanistan Afghani',
     'AUD': 'Australia Dollar'
   }
dict()
构造函数直接从键值对序列构建字典,如中所述。就这么简单:

the_list = [['ALL', 'Albania Lek'],
            ['AFN', 'Afghanistan Afghani'], 
            ['ARS', 'Argentina Peso'], 
            ['AWG', 'Aruba Guilder'],
            ['AUD', 'Australia Dollar']]

dict(the_list)

=> {
     'AWG': 'Aruba Guilder',
     'ALL': 'Albania Lek', 
     'ARS': 'Argentina Peso',
     'AFN': 'Afghanistan Afghani',
     'AUD': 'Australia Dollar'
   }

另一个1行选择是dict理解

{x[0]:x[1] for x in the_list}

另一个1行选择是dict理解

{x[0]:x[1] for x in the_list}
我想

{k:v for k,v in the_list}
比dict(_列表)更好,因为它不调用函数。因此,对性能的理解是成功的

参见测试:

以及: 我想

{k:v for k,v in the_list}
比dict(_列表)更好,因为它不调用函数。因此,对性能的理解是成功的

参见测试:

以及:

可能的重复:和可能的重复:我已经添加了两个快速有效地记录{}over dict()的引用我已经添加了两个快速有效地记录{}over dict()的引用我只是运行了一些计时(使用3.6.6),这似乎并不准确。对于一个1000万项目列表(
list(zip(范围(10000000),范围(10000000)))
),理解的时间是
1.23秒/循环
dict
调用的时间是
1.06秒/循环
,我只是运行了一些计时(使用3.6.6),这似乎并不准确。对于1000万个项目列表(
list(zip(范围(10000000),范围(10000000)))
,理解时间为
1.23秒/循环
dict
调用时间为
1.06秒/循环