Python 3:Dictionary,将多个变量添加到dictonary

时间:2017-11-24 06:58:43

标签: python dictionary

我有一个包含个人资料的字典。每个个人资料都有不同数量的" abouts"。例如,人1具有如上所述:"生活在那里" "在那里工作" "吃这个"人2有:"住在那里"。

我所有的个人资料都在for循环中,我没有在这里复制。在这个for循环中,我创建了一个新的循环,我想获得约束的范围,然后创建包含[abouts]内容的x变量。我想写我的字典{朋友}。

作为我想要的输出:

friend={"screenname":profilename,"id":profileid,"username":username, "about 1" : lives in ,"about 2": works at , and so on untill al the abouts are found and written in the dict. }

非常感谢!

如果我运行此代码,他只会在我的字典中添加最新内容。

for i in range(len(abouts)):
    #print ("about"+str(i) +"=" +abouts[i])
    friend={"screenname":profilename,"id":profileid,"username":username, 
    "about"+str(i):abouts[i]}

1 个答案:

答案 0 :(得分:2)

为什么不在列表键中插入列表。鉴于abouts是一个列表

friend={"screenname":profilename,"id":profileid,"username":username, 
"about":abouts}

由于这也是一个有序集合,使用about属性索引

获取数据会更有效率

更新

因为您想要的输出是

friend={"screenname":profilename,"id":profileid,"username":username, 
 "about 1" : lives in "} # and so on...

您可以将代码简化为:

friend={"screenname":profilename,"id":profileid,"username":username} #create your dictionary first

for key, value in enumerate(abouts):
        friend["about "+str(key)] = value

代码的问题在于你的循环是在每个新循环中覆盖friend变量。您需要在外面创建字典并更新字段。

虽然我个人更喜欢使用List(我的第一个例子),因为这是一个更简单的方法,检索/显示数据要容易得多。