如何用python读取json里面的值啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python读取json里面的值啊相关的知识,希望对你有一定的参考价值。

数据如下,我想要读取name、location里面的lat和lng,还有address,弄了半天也不用,用了json.loads也是报keyerror,
"status":0,
"message":"ok",
"results":[

"name":"公园",
"location":
"lat":39.498402,
"lng":116.007069
,
"address":"xx多少路",
"street_id":"32541349605e7ae96ca3cc1e",
"detail":1,
"uid":"32541349605e7ae96ca3cc1e"

]

1、首先需要在桌面新建‘json.txt’文件,内容为jsonline格式。

2、打开Python开发工具IDLE,新建‘json.py’文件,并按照如图所示书写代码。

3、F5运行程序,Shell打印出json文本信息。

4、这是一次性读取所有内容,如果文件很大的情况,出于性能考虑要分批读取内容,这样要用到yield生成器,改写lines()函数如下,注意yield一定要写在with里,这样才能每次从上一次读取的位置继续读取。

5、继续写程序入口函数,这里要注意readlines返回的是一个列表,要读取里面的内容,要再做一个循环来遍历。

6、F5运行程序,Shell打印出json文本信息,这个利用生成器方式读取的方式经常处理较大的文件。

参考技术A import json
a = '"status":0,"message":"ok","results":["name":"park","location":"lat":39.498402,"lng":116.007069,"address":"xx road","street_id":"32541349605e7ae96ca3cc1e","detail":1,"uid":"32541349605e7ae96ca3cc1e"]'
jsonData = json.loads(a)
print jsonData
print jsonData['results'][0]['location']['lat']
print jsonData['results'][0]['location']['lng']
print jsonData['results'][0]['address']

本回答被提问者和网友采纳

如何用python读取json文件里指定的数据

JSON文件who.json内容如下:

"name": "mss",
"version": "1.0.0",
"description": "Policy issue system",
"main": "app.js",
"scripts":
"dev": "pm2 reload processes.json --env dev",
"test": "pm2 reload processes.json --env test",
"pro": "pm2 reload processes.json",
"start": "node app.js "
,
"keywords": [
"service",
"mss",
"microService"
],
"author": "who@163.com ",
"license": "Apache-2.0",
"dependencies":
"ab": "^2.0.0",
"ae": "^6.1.0",
"af": "^0.16.2",
"co-mysql": "^1.0.0",
"ca": "0.0.3",
"date-utils": "^1.2.21",
"exc": "^0.5.1",
"pgtool": "^7.8.1"



如果通过python读取这个json里"dependencies"里所包含的数据,并进行罗列,将数据转换成:"ab": "^2.0.0"转换成ab@^2.0.0这样的格式?
如有大神回答,请尽量详细,我是python初学者一个。

参考技术A import json

with open('who.json', 'r') as f:
    data = json.load(f)
    dependencies = data['dependencies']
    for k, v in dependencies.iteritems():
        print(f'k@v')

追问

大佬,请问如何对不同目录下的多个who.json进行读取呢?

追答

把所有目录名放到列表里,遍历列表重复上述操作。

本回答被提问者采纳

以上是关于如何用python读取json里面的值啊的主要内容,如果未能解决你的问题,请参考以下文章

如何用python读取json文件里指定的数据

请问如何用ASP读取ini配置文件

如何用Qt处理http获取的超大的json数据

c#生成的Json如何用python解析

暗黑2如何用UT给随意给装备修改属性值啊?

如何用js遍历本地文件