当我像这样迭代字典时:
dict2={
'Joe':('Caucasian','Male', 35, 7.5),
'Kevin':('Black','Male', 55, 9.5),
More tuples here like the one above
}
数据更大,但这并不重要
我试图完成的是用元组中的信息创建一个新词典。像这样:
dict_i_want = {
"Name": Joe,
"Ethiniticy": "Caucasian",
"Gender":"Male",
"Voter_age": 35,
"Score": 7.5
}
这是我的密码:
dict_i_want = {}
for k,v in dict2.items():
dict_i_want["Name"] = k
dict_i_want['Ethiniticy'] = v[0]
dict_i_want['Gender'] = v[1]
dict_i_want['Voter_age'] = v[2]
dict_i_want['Score'] = v[3]
但当我这么做的时候
print(dict_i_want)
{'Name': 'Kevin', 'Ethiniticy': 'Black', 'Gender': 'Male', 'Voter_age': 55, 'Score': 9.5}
结果就是mydict2中的最后一个元组。不是所有的元组。 如果我有循环,我做错了什么
PS:我不想在这里使用任何模块或导入任何内容。没有像zip()之类的内置函数。我想硬编码解决方案
@ForceBru回答了您的问题-您最好的选择是词典列表,除非您希望为每个子词典创建具有唯一键的词典。使用列表方法,您可以执行以下操作:
例如:
输出:
Dict键必须是唯一的。您只是在循环的每个周期中覆盖您的dict。这就是dicts的工作原理
相关问题 更多 >
编程相关推荐