Python将两个列表转换为字典


一、概述

现有2个列表

keys = ['name', 'age', 'food']
values = ['Monty', 42, 'spam']

需要将转换为字典,结果如下:

a_dict = {'name' : 'Monty', 'age' : 42, 'food' : 'spam'}

那么最简单的方法是什么呢?

 

二、代码实现

最开始,我是想用2层for循环实现,但是发现太麻烦了。最简单的方法,使用zip()函数即可。

zip()函数

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换。

如果需要了解 Pyhton3 的应用,可以参考 Python3 zip()。

 

完整代码

keys = ['name', 'age', 'food']
values = ['Monty', 42, 'spam'] a_dict = dict(zip(keys, values)) print(a_dict)

执行输出:

{'name': 'Monty', 'age': 42, 'food': 'spam'}

 

本文参考链接:

https://www.imooc.com/wenda/detail/561674

https://www.runoob.com/python/python-func-zip.html

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM