Discuss / Python / hejiang

hejiang

Topic source

obj = dict(name='小明', age=20)

s = json.dumps(obj, ensure_ascii=False)

不太理解的是:1. dict不是key:value键值对形式的吗?为什么用name=‘小明’表示出来了

                         2.为什么不是age=‘20’ ,他不是字符串吗?

凡响skyline

#2 Created at ... [Delete] [Delete and Lock User]

obj = dict(name='小明', age=20)

字典类型本质是个类,当然可以直接这样初始化字典:obj = {'name' : '小明', 'age' = 20}

也可以像最上面这句用dict类接收关键字参数创建一个字典实例对象,实质上和第2行是一样的

年龄age的值用字符串还是整数表示都可以啊

只是JSON 的键值对中的永远是 str类型的。

当一个对象被转化为 JSON 时,字典中所有的都会被强制转换为字符串。

这所造成的结果是字典被转换为 JSON 然后转换回字典时可能和原来的不相等。

换句话说,如果 x 具有非字符串的键,则有 loads(dumps(x)) != x


  • 1

Reply