Python FOR循环字典
我试图遍历一个包含字典的列表 字典定义:Python FOR循环字典,python,dictionary,Python,Dictionary,我试图遍历一个包含字典的列表 字典定义:{'id':y,'value':(数据[“值])} 我有这样一个for循环: for a in (inputs["value"]): #print (newStack) if a == '+': op1, op2 = newStack.pop(), newStack.pop() newStack.append(op2 + op1) elif a == '-': op1, op2 = n
{'id':y,'value':(数据[“值])}
我有这样一个for循环:
for a in (inputs["value"]):
#print (newStack)
if a == '+':
op1, op2 = newStack.pop(), newStack.pop()
newStack.append(op2 + op1)
elif a == '-':
op1, op2 = newStack.pop(), newStack.pop()
newStack.append(op1 - op2)
...
输入是发送的列表,包含字典。
但是我得到了一个错误:
列表索引必须是整数,而不是str
for循环需要拉出字典中“value”的内容,将其与下面的if语句进行比较。
有人能帮我解释一下为什么我会犯这个错误吗
谢谢你输入[“值”]
的意思是“在输入
“值”中按字典键获取内容”
对于输入中包含的每个字典,您需要“获取字典键处的内容”值“”:
你写的方式,看起来是这样宣布的:
data = {'value': (0,1,2,3)}
inputs = {'id' : 'y', 'value' : (data["value"])}
如果是,则可以简单地迭代为:
for i in inputs:
if i is 'value':
print inputs[i]
在Python中,当迭代时,它们进入键。这看起来与问题非常相似。不,这里的错误是
inputs[“value”]
需要整数查找,即type(inputs)==list
for i in inputs:
if i is 'value':
print inputs[i]