本文首发于 知乎
我们常用json文件存储数据,在写入文件前,通常使用
json.dumps
函数将python对象转化为字符串再写入文件。但是
str
函数也可以将字典、列表等转化为字符串,那么我们在写入json文件时可不可以不
import json
,直接用
str
来做呢?答案时不可以的。
我们来看几个例子
>>> import json
>>> str([1,2])
'[1, 2]'
>>> str([1, 2])
'[1, 2]'
>>> json.dumps([1,2])
'[1, 2]'
>>> json.dumps([1, 2])
'[1, 2]'
>>> json.dumps([1, 2]) == str([1, 2])
True
从上面例子可以看出
-
str
和json.dumps
都不是原模原样地输出我们输入的内容,会自动将列表逗号后面只加一个空格 -
在
[1, 2]
这个例子上,二者是一样的
下面我们来看几个不一样的例子 1.引号