如何返回JSON字符串的值?

时间:2018-11-01 22:02:47

标签: python json

编写一个名为“ get”的函数,该函数将JSON格式的字符串作为对象的参数,并带有键“ x”和“ y”,每个键都映射到整数数组。返回x == 11处的y值。

输入:['{"x": [-5, 4, 3, 19, 11], "y": [-5, 7, -11, 6, -3]}']

预期输出:-3

import json
def get(lista):
    load = json.loads(lista)
    if load['x'] == 11:
        return load['y']

我返回的值为0。我在做什么错了?

1 个答案:

答案 0 :(得分:0)

load['x']是一个列表;它永远不能等于11。您需要遍历其元素,并检查 element 是否为11。您可以在循环时使用enumerate来访问索引:

def get(lista):
    load = json.loads(lista)
    for index, element in enumerate(load['x']):
        if element == 11:
            return load['y'][index]

print(get('{"x": [-5, 4, 3, 19, 11], "y": [-5, 7, -11, 6, -3]}'))
# -3