python 嵌套中的字典赋值

l=["x1","x2","x3"]l2=["ff","ffs"]dic1=dict.fromkeys(l,dict.fromkeys(l2,0))构造的嵌套字典如下:{... l=["x1","x2","x3"]
l2=["ff","ffs"]
dic1=dict.fromkeys(l,dict.fromkeys(l2,0))
构造的嵌套字典如下:
{'x1': {'ff': 0, 'ffs': 0},
'x2': {'ff': 0, 'ffs': 0},
'x3': {'ff': 0, 'ffs': 0}}
现在想对key=x1的item中的“ff”重新赋值为1
即期望结果是
{'x1': {'ff': 1, 'ffs': 0},
'x2': {'ff': 0, 'ffs': 0},
'x3': {'ff': 0, 'ffs': 0}}
使用语句
dic1["x1"]['ff']=1
但是输出结果是 print(dic1)
{'x1': {'ff': 1, 'ffs': 0},
'x2': {'ff': 1, 'ffs': 0},
'x3': {'ff': 1, 'ffs': 0}}

请问怎么修改
展开
 我来答
DoramiHe
2018-04-29 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59543
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
yourDict={'1000':{'1':['a','b','c','d'],'2':['e','b','c','a']},'2000':{'1':['c','d','c','d'],'2':['a','a','c','d']}} out=open('out.xls','w') for key in yourDict: out.write(key) for key2 in yourDict[key]: out.write('\t') out.write(key2+'\t') out.write('\t'.join(yourDict[key][key2] )) out.write('\n') 最后xls转存为csv即可
匿名用户
2018-06-18
展开全部
那是因为你的每一个key对应的dict都是同一个,可以用id看一下,是完全相同的。
至于修改么。。。循环赋值吧,保证每次可以新建一个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦呓罒幻羽
2018-04-29 · TA获得超过106个赞
知道答主
回答量:88
采纳率:75%
帮助的人:23.4万
展开全部
dct1.update({"x1":{"ff":1,"ffs":0}})

笨方法,好用就拿去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式