首页 > 解决方案 > 将两个不相等的列表放入字典中。如果 key 没有值,则不给出。忽略值没有键 - python

问题描述

有两个不同长度的列表。第一个包含键,第二个包含值。编写一个从这些键和值创建字典的函数。如果键没有足够的值,则字典应该具有值 None。应该忽略没有足够键的值。

a = ['a','b','c']
b = [1,2,3,4,5]

while len(b) < len(a):
  b.append(None)

c = dict(zip(a,b))
print(c)

而不是在程序中定义 2 个列表,如果用户想要输入 2 个长度不等的列表,如何解决

标签: python-3.x

解决方案


实现这一点的直接方法是指定我们需要在 dict 中填充值,直到所有键都被覆盖。

keys = ['a','b','c']
values = [1,2, 3, 4, 5]

res = {keys[i]: values[i] for i in range(len(keys))}

输出:

{'a': 1, 'b': 2, 'c': 3}

推荐阅读