Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django中使用JSON dict_Python_Json_Django - Fatal编程技术网

Python 在Django中使用JSON dict

Python 在Django中使用JSON dict,python,json,django,Python,Json,Django,我试图访问JSON dict中的某些信息字段。我的代码设置如下: 视图.py def viewIssues(request): r = requests.get(bucket_url) issue_payload = r.json() issue = json.loads(str(issue_payload)) context = { "issue_title": issue['issues']['title'], "issue_

我试图访问JSON dict中的某些信息字段。我的代码设置如下:

视图.py

def viewIssues(request):
    r = requests.get(bucket_url)
    issue_payload = r.json()
    issue = json.loads(str(issue_payload))

    context = {
        "issue_title": issue['issues']['title'],
        "issue_content": issue['issues']['content'],
        "title": "View Issues",
    }
   return render(request, "view_issues.html", context)
str(问题载荷)给了我以下信息:

    {  
   'search':None,
   'count':1,
   'filter':{  

    },
   'issues':[  
      {  
         'priority':'major',
         'comment_count':0,
         'utc_created_on':'2016-11-12 01:48:16+00:00',
         'utc_last_updated':'2016-11-12 01:48:16+00:00',
         'status':'new',
         'title':'example issue',
         'reported_by':{  
            'is_staff':False,
            'display_name':'display name',
            'is_team':False,
            'resource_uri':'/1.0/users/username',
            'avatar':'https://bitbucket.org/account/username/avatar/32/?ts=1479493904',
            'first_name':'firstname',
            'username':'username',
            'last_name':'lastname'
         },
         'is_spam':False,
         'content':'blah blah',
         'metadata':{  
            'milestone':None,
            'component':None,
            'version':None,
            'kind':'bug'
         },
         'local_id':1,
         'created_on':'2016-11-12T02:48:16.052',
         'resource_uri':'/1.0/repositories/username/supportal2016test/issues/1',
         'follower_count':1
      }
   ]
}
但是,当我尝试使用json.loads和index['issues']['title']和['issues']['title']时,我得到一个错误:

JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
我想知道这是否是因为转换后的有效负载在每个字段上都有报价(即“问题”)。任何帮助都将不胜感激。

调用
.json()
已经解析了json结果,并返回了一个Python结构,在本例中是一个字典。那你的电话呢

issue = json.loads(str(issue_payload))
将字典强制转换为字符串并再次尝试解析它。但是字典字符串表示法包含字符串周围的
,而不是JSON中所要求的

长话短说:
issue\u有效载荷
已经是您想要的了。

调用
.json()
已经解析了json结果,并返回了一个Python结构,在本例中是一个字典

issue = json.loads(str(issue_payload))
将字典强制为字符串并尝试再次解析它。但字典字符串表示法包含字符串周围的
,而不是JSON中所需的


长话短说:
issue\u有效载荷
已经是您想要的了。

它不是有效的JSON。字符串应为双引号。您不能像Python那样使用这两种引号类型。您实际拥有的是对象的Python表示,而不是JSON。您不需要自己解码,因为
json()
方法已经为您完成了解码。您最终使用Python表示,因为您对已经是Python对象的对象使用了
str()
。只需删除这一行
issue=json.loads(str(issue_payload))
并使用
issue_payload
;它已经是一个字典。它不是有效的JSON。字符串应为双引号。您不能像Python那样使用这两种引号类型。您实际拥有的是对象的Python表示,而不是JSON。您不需要自己解码,因为
json()
方法已经为您完成了解码。您最终使用Python表示,因为您对已经是Python对象的对象使用了
str()
。只需删除这一行
issue=json.loads(str(issue_payload))
并使用
issue_payload
;它已经是一本字典了。