以下是合并过程后获得的输出。
{
u'a '{u'id'[u'VPH65848HI '],u'social_links'[“linkedin_link”,” facebook_link”],
u'b '{u'id'[u'VPH65848HJ '],u'social_links'[“linkedin_link”,” facebook_link”]
}
我想要的输出是
{
u'a':{u'id':[u'V-PH65848HI'],u'social_links':{'linkedin':['linkedin_link'],'facebook:['facebook_link']}},
u'b':{u'id':[u'V-PH65848HJ'],u'social_links': {“LinkedIn”:[“linkedin_link”],” Facebook的:[” facebook_link”]}}
}
以下是代码:
for k,v in result.items():
if v['social_links']:
for v1 in v['social_links']:
if "facebook" in v1:
result['facebook']=result['social_links'][1]
我不知道如何处理这个问题。请帮忙!提前致谢。
答案 0 :(得分:0)
您似乎并未存储所有结果。所以,我将类型更改为其中包含字典的列表。另外,我查看了代码,并且当你已经有一个值循环来查找facebook
时它就不依赖于索引。
in1 = {
u'a':{u'id':[u'VPH65848HI'],u'social_links':['linkedin_link','facebook_link']},
u'b':{u'id':[u'VPH65848HJ'],u'social_links':['linkedin_link','facebook_link']}
}
def isset(variable):
return variable in locals() or variable in globals()
result = []
for k,v in in1.items():
temp = {}
for v1 in v[u'social_links'] :
if "facebook" in v1:
temp['facebook']=v1
result.append(temp)
print(result)