繁体   English   中英

使用list1作为键和list2作为值创建字典

[英]Creating a Dictionary using list1 as keys and list2 as values

使用list1作为键并使用list2作为值来完成返回字典的功能

def createDict(list1, list2):
    my_dict = {'list1':'list1'}
    my_dict.update({'list1':list2})
    return my_dict 

createDict(['tomato', 'banana', 'lime'], ['red','yellow','green'])




# expected output: {'tomato': 'red', 'banana': 'yellow', 'lime': 'green'}

# getting {'list1': ['red', 'yellow', 'green']}

使用zipdict

l1 = [1, 2, 3]
l2 = [4, 5, 6]

print(dict(zip(l1, l2)))

输出:

{1: 4, 2: 5, 3: 6}

这是dict因为dict构造函数采用键值元组:

d = dict([(1, 4), (2, 5), (3, 6)])
print(d)

输出:

{1: 2, 3: 4, 5: 6}

zip将两个列表组合成元组对:

print(list(zip([1, 2, 3], [4, 5, 6]))

输出:

[(1, 4), (2, 5), (3, 6)]

这两个功能的组合将构建您的字典。

您可以使用“ dict理解”特殊语法:

my_dict = {key: value for key, value in zip(list1, list2)}

或使用包含键和值的包装来调用内置的dict

my_dict = dict(zip(list1, list2))

在这两种情况下,密钥都是内置的zip ,如果给定两个或多个可迭代项,则将从每个项中选择一项并将其打包在(通常是临时的)元组中。 内置的dict 2元组的可迭代对象,然后将其解释为键/值对。 在dict-comprehension语法中,我们明确使用zip生成的元组的每个组件作为键和值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM