我有以下词典。我想循环这个键和值 即冰/冷物品,打印“价值”
plot(ct, tp_args = list(beside = TRUE), gp = gpar(fontsize = 33))
试过这个:
[
{
"ice/cold": [
"vanilla",
"hotchoc",
"mango",
"banana"
]
},
{
"fire/hot": [
"barbecue",
"hotsalsa",
"sriracha",
"kirikiri"
]
},
{
"friendly/mild": [
"ketchup",
"mustard",
"ranch",
"dipster"
]
}
]
但是给了我错误
data='*above set*'
for key in data.items():
print value
答案 0 :(得分:3)
你拥有的数据结构有点奇怪。你没有一个单词,你有一个单词列表,每个单词都有一个单独的键,它本身包含一个列表。你可以这样做:
for item in data:
for key, value in item.items():
print value
但更好的方法是改变结构,这样你只有一个字典:
{
"ice/cold": [
"vanilla",
"hotchoc",
"mango",
"banana"
],
"fire/hot": [
"barbecue",
"hotsalsa",
"sriracha",
"kirikiri"
],
"friendly/mild": [
"ketchup",
"mustard",
"ranch",
"dipster"
]
}
答案 1 :(得分:1)
这里data
实际上是一个列表而不是字典
列表的每个索引都是一个字典,所以只需遍历列表中的所有元素,看它是否对应于所需的字典
这是代码
data= [
{
"ice/cold": [
"vanilla",
"hotchoc",
"mango",
"banana"
]
},
{
"fire/hot": [
"barbecue",
"hotsalsa",
"sriracha",
"kirikiri"
]
},
{
"friendly/mild": [
"ketchup",
"mustard",
"ranch",
"dipster"
]
}
]
for items in data:
for key, value in items.iteritems():
if key == "ice/cold":
print value