读取json文件并获取输出值

2024-05-15 15:36:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用python获取下面json文件的输出

Json文件

{
    "Name": [
        {
            "name": "John",
            "Avg": "55.7"
        },
        {
            "name": "Rose",
            "Avg": "71.23"
        },
        {
            "name": "Lola",
            "Avg": "78.93"
        },
        {
            "name": "Harry",
            "Avg": "95.5"
        }

    ]
}

当我找哈利的时候,我想得到这个人的平均分数 i、 e.我需要以下或类似格式的输出

Harry = 95.5

这是我的密码

import json

json_file = open('test.json')  //the above contents are stored in the json
data = json.load(json_file)
do = data['Name'][0]
op1 = do['Name']
if op1 is 'Harry':
    print do['Avg']

但是当我运行时,我得到错误IOError: [Errno 63] File name too long


Tags: 文件thenamejsondatajohndofile
3条回答

^{}从文件file-like对象加载数据。如果要从字符串中读取,可以使用json.loads

你可以做这样简单的事情

import json

file = open('data.json')
json_data = json.load(file)

stud_list = json_data['Name']
y = {}
for var in stud_list:
    x = {var['name']: var['Avg']}
    y = dict(list(x.items()) + list(y.items()))

print(y)

它以字典格式输出

{'Harry':'95.5','Lola':'78.93','Rose':'71.23','John':'55.7'}

如何用python 3打印哈利的乐谱

import json
from pprint import pprint

with open('test.json') as data_file:
    data = json.load(data_file)

for l in data["Name"]:
    if (str(l['name']) == 'Harry'):
        pprint(l['Avg'])

相关问题 更多 >