Python 解释这个 json

问题描述

我使用以下代码

import json
full_json = "{'Nike - Hombres Tenis Fila': ['/nike/casual/','100','/medias/']}"
jtopy=json.dumps(full_json) #json.dumps take a dictionary as input and returns a string as output.
dict_json=json.loads(jtopy) 

print(dict_json['Nike - Hombres Tenis Fila'][0])

我如何获得价值: /nike/casual/runners/'

我不断收到错误消息:

类型错误字符串索引必须是整数

解决方法

您的 json 无效,您需要交换单引号和双引号。
您还需要 <div class="panel-heading"> <h1 style="text-align: center">Students</h1><br> <div class="form-group"> <input type="text" class="form-control search-input" placeholder="Search..." [(ngModel)]="filterTerm"> </div> <div class="panel-body"> <table class="table table-hover table-sm"> <thead class="thead-light"> <tr> <th>Student code</th> <th>Student name</th> <th>Student date</th> <th>Action</th> </tr> </thead> <tbody> <tr *ngFor="let student of students| filter:filterTerm"> <td>{{student.codestudent}}</td> <td>{{student.namestudent}}</td> <td>{{student.datestudent}}</td> <td><button (click)="deleteStudent(student.codestudent)" class='btn btn-primary'><i class="fa fa-futboll-0">Delete</i></button> </td> </tr> </tbody><br> </table> </div> 而不是 json.loads

json.dumps
,

Json 在其字符串中不接受单引号。要进行查询,您应该:

  1. 将您的 json 字符串替换为此 '{"Nike - Hombres Tenis Fila": ["/nike/casual/","100","/medias/"]}'
  2. 运行 json.loads dictjson = json.loads('{"Nike - Hombres Tenis Fila": ["/nike/casual/","/medias/"]}')
  3. 做你的查询dictjson["Nike - Hombres Tenis Fila"][0]