0

使用这个 json 数据我正确地解析了信息,但是在将解析的数据分配给一个变量并通过程序运行它之后,我没有得到输出,为什么?

{"maps":[{"id":"blabla i am spartacus","iscategorical":"0"},{"id":"blabla","iscategorical":"0"}],
"masks":{"id":"valore"},
"om_points":"value",
"parameters":{"id":"valore"}
}

这是我的代码:

import json

json_data = open("json_file")
data = json.load(json_data)
json_data.close()

json_list = data ["maps"] [0] ["id"]

def string_search():
    if json_list.count("i") >= 1:
        return True
    return False
4

2 回答 2

1
import json

json_data = open("data.txt")
data = json.load(json_data)
json_data.close()


json_list = data ["maps"] [0] ["id"]

print json_list   #blabla i am spartacus

def string_search():
    if json_list.count("i") >= 1:
        return True
    return False


result = string_search()
print result     #True

顺便说一句,名称 'json_list' 是一个可怕的字符串名称。在 python 中, string_search() 被称为function。一个函数应该接受一些输入,并返回一个结果——它不应该读取像 json_list 这样的全局变量。

于 2013-05-30T05:35:38.167 回答
0

编写函数的专业方法是:

def string_search(a_string): 
    return a_string.count("i") >= 1

然后你会这样调用函数:

result = string_search("hi")

甚至:

def string_search(a_string, char):
    return a_string.count(char) >= 1


result = string_search("hello", "l")
于 2013-05-31T01:44:53.790 回答