从元组创建字典
Creating dictionary from tuple
问题:我正在尝试从元组创建字典,但收到以下消息:
Valueerror: dictionary update sequence element #1 has length 3; 2 is required
ValueError: dictionary update sequence element #2 has length 1; 2 is required
我尝试使用 dict() 创建字典,但似乎只有当元组列表包含两个元素时才有效。
代码:
my_list = [('a', 1), ('b', 2,3), ('c',)]
dict(my_list)
我尝试生成的结果是:
dict(my_list)
{'a': 1, 'b': 2, 'c': None}
您可以使用以下代码。它检查每个元组是否存在第二个元素。如果不是,则使用 None
。
my_list = [('a', 1), ('b', 2,3), ('c',)]
result = {x[0]: x[1] if len(x)>1 else None for x in my_list}
print(result)
输出:
{'a': 1, 'b': 2, 'c': None}
问题:我正在尝试从元组创建字典,但收到以下消息:
Valueerror: dictionary update sequence element #1 has length 3; 2 is required
ValueError: dictionary update sequence element #2 has length 1; 2 is required
我尝试使用 dict() 创建字典,但似乎只有当元组列表包含两个元素时才有效。
代码:
my_list = [('a', 1), ('b', 2,3), ('c',)]
dict(my_list)
我尝试生成的结果是:
dict(my_list)
{'a': 1, 'b': 2, 'c': None}
您可以使用以下代码。它检查每个元组是否存在第二个元素。如果不是,则使用 None
。
my_list = [('a', 1), ('b', 2,3), ('c',)]
result = {x[0]: x[1] if len(x)>1 else None for x in my_list}
print(result)
输出:
{'a': 1, 'b': 2, 'c': None}