用python解析JSON

用python解析JSON,python,json,parsing,Python,Json,Parsing,我有问题。 我需要在JSON中得到2个项目,项目是“some_number”和“some_number_2” 每个请求中的项目“sample1”和“sample2”各不相同。 我是Python的新手。多谢各位 "data":{ "sample1":{ "some_number":"8410000110275080", "some_number_2":"0070050001010011", "name":"0000405533003537",

我有问题。 我需要在JSON中得到2个项目,项目是“some_number”和“some_number_2” 每个请求中的项目“sample1”和“sample2”各不相同。 我是Python的新手。多谢各位

"data":{
   "sample1":{
      "some_number":"8410000110275080",
      "some_number_2":"0070050001010011",
      "name":"0000405533003537",
      },
   "sample2":{
      "some_number":"8410000110275080",
      "some_number_2":"0070050001010011",
      "name":"0000405533003537",
      }

在我的代码中,我只能获得'sample1'和'sample2'。在下一个请求中,这些值是不同的。

您需要在字典中加载Json:

with open("your file path", 'r') as f:
    data = json.load(f)
然后,如果要迭代dictionnary的键和值,请执行以下操作:

for key, value in data.items():
    print key, value
然后可以嵌套
for
循环,以获得所需的
键、值对


最好假定您的json文件如下所示:

{"data":{
   "sample1":{
      "some_number":"8410000110275080",
      "some_number_2":"0070050001010011",
      "name":"0000405533003537",
      },
   "sample2":{
      "some_number":"8410000110275080",
      "some_number_2":"0070050001010011",
      "name":"0000405533003537",
      }
}
您可以使用类似于json模块的东西来解析它:

导入json
#使用with打开文件
以open('myfile.json')作为fh:
my_json=json.load(fh)
#现在我的json是一本字典
#我们可以迭代字典中的值
internal_dict=my_json['data']
一些数字,一些数字2=[],[]
#迭代每个值
对于内部目录值()中的val:
some_number.append(val['some_number'])
some_number_2.追加(val['some_number_2']))

这不是有效的json。是否有外部大括号包装
数据
?您可以使用bultin
json
模块
data=json.load(fd);[(d['some_number'],d['some_number_2'])表示数据['data']中的Ud。items()]
?但是不要使用一行:)您如何尝试存储
some\u number
some\u number\u 2
的值?好吧,这里有很多事情需要注意。您的代码无法处理上面发布的JSON数据。其次,如果我们认为输入数据的格式正确,那么您确定这个答案不是重复的吗?上面发布的Json有
,它们与这里无关,但是这个代码与格式良好的Json一起工作。然后,我只是给出一个如何解决这个问题的提示。如果他/她必须考虑如何获取值,他/她将更好地学习如何操作Json。