python 如何处理字典和列表相互嵌套的数据

现在我有这样一个变量:
Sendmess={
‘data’:[{
‘id’:’Switch’,
‘dataSteam’:[{‘value’:0}]
}]
}
我要怎么做才能改变value对应的值呢?比如将0改成1,2…等等

我尝试过用遍历的方法,但是那样实现起来跟麻烦,要是我的字典里元素再多几组的话,就更麻烦了。请问有更好的方法吗?

最佳答案

自己想到了一种方法,是之前写C的时候常用的 Sendmess=“”{
‘data’:[{
‘id’:’Switch’,
‘dataSteam’:[{‘value’:%d}]
}]
}"

dic = eval(Sendmess % 1)

3年前 评论
讨论数量: 2
Jason990420
>>> Sendmess = {'data':[{'id':'Switch','dataSteam':[{'value':0}]}]}
>>> tmp = Sendmess['data'][0]['dataSteam'][0]
>>> tmp['value'] = 1
>>> print(Sendmess)
{'data': [{'id': 'Switch', 'dataSteam': [{'value': 1}]}]}
>>> dataSteam = {'value':0}
>>> data = [{'id':'Switch','dataSteam':[dataSteam]}]
>>> Sendmess = {'data':data}
>>> dataSteam['value'] = 1
>>> print(Sendmess)
{'data': [{'id': 'Switch', 'dataSteam': [{'value': 1}]}]}
3年前 评论
Ellsion_LearnKu (楼主) 3年前

自己想到了一种方法,是之前写C的时候常用的 Sendmess=“”{
‘data’:[{
‘id’:’Switch’,
‘dataSteam’:[{‘value’:%d}]
}]
}"

dic = eval(Sendmess % 1)

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!