2 回答

TA贡献1993条经验 获得超5个赞
对于您想要的答案(基于我对您问题的理解),我不确定您为什么使用 for 循环。您的函数中不需要 for 循环。只需一个简单的任务即可完成这项工作。你不必要地把它复杂化了。
simpsons = ['Homer', 'Bart', 'Marge', 'Lisa']
def create_dict_from_list(names):
name_dict = {}
name_dict['name'] = names # <--- No need of for loop
return name_dict
create_dict_from_list(simpsons)
# {'name': ['Homer', 'Bart', 'Marge', 'Lisa']}

TA贡献2012条经验 获得超12个赞
您可以将默认值设置[]为键的空列表'name' 对于给定的示例,for如果要将所有名称分配给键,则可以不使用循环(如@Bazingaa 所回答)'name'。另一方面,如果您想有选择地分配名称,请使用for循环。
simpsons = 'Homer', 'Bart', 'Marge', 'Lisa'
def create_dict_from_list(names):
name_dict = {}
name_dict.setdefault('name',[])
for name in names:
name_dict['name'].append(name)
return name_dict
create_dict_from_list(simpsons)
输出
{'name': ['Homer', 'Bart', 'Marge', 'Lisa']}
添加回答
举报