传入字典而不是数组
Less than 1 minute
传入字典而不是数组
整体是一个字典
data = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
# data = [{'a': 1}, {'b': 2}, {'c': 3}, {'d': 4}, {'e': 5}] 列表是错的
json_str = json.dumps(data)
json字符串和字典的区别
json字符串:
- 这是字符串, 而不是字典类型
- True变成true
m = {'f':True}
print(m)
# {'f': True}
print(json.dumps(m))
# '{"f": true}'
- 里面必须是双引号, 而不是单引号
{"a": 1, "b": 2, "c": 3, "d": 4, "e": 5}
json的对象不能以逗号结尾
错误的
{
"name": "Roman",
}
json中不能有注释
// comment
{
"key": "value" // comment
}
解法: 使用字段key加前缀做注释key
例如加入属性的key是xyz, 则?xyz作为注释字段。这样的好处是,没有重名的字段,完全符合JSON协议。常用的前缀还有#, _, __等
{
"name": "Roman",
"?name": "defines a nickname"
}