python json.dumps() json.dump()的区别
首先说明基本功能:
dumps是将dict转化成str格式,loads是将str转化成dict格式。
dump和load也是类似的功能,只是与文件操作结合起来了。
import
json
a
=
{
'name'
:
'wang'
,
'age'
:
29
}
b
=
json.dumps(a)
print
b,
type
(b)
{
"age"
:
29
,
"name"
:
"wang"
} <
type
'str'
>
json.loads(b)
{u
'age'
:
29
, u
'name'
: u
'wang'
}
print
type
(json.loads(b))
<
type
'dict'
>
简单说就是dump需要一个类似于文件指针的参数(并不是真的指针,可称之为类文件对象),可以与文件操作结合,也就是说可以将dict转成str然后存入文件中;而dumps直接给的是str,也就是将字典转成str。
注:实际中dump用的较少。
import
json
a
=
{
'name'
:
'wang'
}
fp
=
file
(
'test.txt'
,
'w'
)
type
(fp)
file
json.dump(a, fp)
cat test.txt
fp.close()
cat test.txt
{
"name"
:
"wang"
}