从python中读取json文件

时间:2014-10-03 11:33:32

标签: python json

我正在尝试使用json库从python脚本中读取json文件。经过一些谷歌搜索后,我发现了以下代码:

with open(json_folder+json) as json_file:
        json_data = json.loads(json_file)
        print(json_data)

其中json_folder + json是json文件的路径和名称。我收到以下错误str对象没有属性加载。

5 个答案:

答案 0 :(得分:8)

代码使用json作为变量名。它将隐藏您导入的模块引用。为变量使用不同的名称。

除此之外,代码传递文件对象,而json.loads接受字符串。

传递文件内容:

json_data = json.loads(json_file.read())

或使用接受类文件对象的json.load

json_data = json.load(json_file)

答案 1 :(得分:2)

import json
f = open( "fileToOpen.json" , "rb" )
jsonObject = json.load(f)
f.close()

看起来你应该以相当复杂的方式做。

答案 2 :(得分:1)

试试这样: -

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

答案 3 :(得分:0)

考虑到json文件的路径设置为变量json_file

import json

with open(json_file, "rb") as f:
    json_data = json.load(f)

print json_data

答案 4 :(得分:-1)

我做到了....

import urllib2

link_json = "\\link-were\\"
link_open = urllib2.urlopen(link_json) ## Open and Return page.
link_read = link_open.read()           ## Read contains of page.

json = eval(link_read)[0]              ## Transform the string of read in link_read and return the primary dictionary ex: [{dict} <- return this] <- remove this

print(json['helloKey'])

Hello World