在JSON字符串下面。现在,我想从那个JSON字符串中提取每个单独的字段。
因此,我决定创建一个方法parse_json,它将接受我想要从JSON字符串中提取的变量。
下面是我的python脚本-
#!/usr/bin/python
import json
jsonData = '{"pp": [0,3,5,7,9], "sp": [1,2,4,6,8]}'
def parse_json(data):
jj = json.loads(jsonData)
return jj['+data+']
print parse_json('pp')
现在,每当我将pp
传递给parse_json
方法以从JSON字符串中提取其值时,我总是得到以下错误:
return jj['+data+']
KeyError: '+data+'
知道怎么解决这个问题吗?因为我需要传递应该从JSON字符串中提取的变量?
发布于 2013-12-26 02:07:05
你可能只想要这个:
return jj[data]
您的代码试图查找一个名为'+data+'
的键,而您想要做的是使用函数的参数名称查找键。
发布于 2013-12-26 02:07:15
只需使用data
参数本身。
替换以下一行:
return jj['+data+'] # lookup with `+data+`, not `pp`
通过以下方式:
return jj[data]
https://stackoverflow.com/questions/20778355
复制相似问题