python中json.dump()与json.dumps()的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中json.dump()与json.dumps()的区别相关的知识,希望对你有一定的参考价值。

1.将python数据结构转换为json字符串(json.dumps())

>>> import json
>>> data={\'name\':\'pipi\',\'age\':18}
>>> json.dumps(data)
\'{"name": "pipi", "age": 18}\'

2.将json格式的字符串转换为python数据结构(json.loads())

>>> json_str=\'{"name": "pipi", "age": 18}\'
>>> json.loads(json_str)
{\'name\': \'pipi\', \'age\': 18}

 3.将json对象写入文件中(json.dump())

data={\'name\':\'pipi\',\'age\':18}
>>> with open("c:/Users/cale/json.txt",\'w\') as f:
    json.dump(data,f)

 

 4.从文件中获取json对象

with open("c:/Users/cale/json.txt",\'r\') as f:
    data=json.load(f)

    
>>> data
{\'name\': \'pipi\', \'age\': 18}
>>> 

注:如果用f.read()获取的是一个字符串,而不是json对象

with open("c:/Users/cale/json.txt",\'r\') as f:
    data=f.read()

    
>>> data
\'{"name": "pipi", "age": 18}\'

备注:json格式的数据不一定是字典对象,也可以是列表,字符串(列表及字符串都可以用json.loads()方法解析)。如下:

>>> m=\'[1,2,3]\'
>>> import json
>>> json.loads(m)
[1, 2, 3]
>>> m=\'123\'
>>> json.loads(m)
123

 

 

 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

把一个列表类型的字符串转换成列表有两张方法:

1.

eval(\'[1,2,3]\')
[1, 2, 3]
2.

json.loads(\'[1,2,3]\')
[1, 2, 3]

 

 

 

以上是关于python中json.dump()与json.dumps()的区别的主要内容,如果未能解决你的问题,请参考以下文章

python json.dumps() json.dump()的区别

python json.dumps() json.dump()的区别

json.dumps与json.dump的区别 json.loads与json.load的区别

json.dumps与json.dump的区别 json.loads与json.load的区别

python3.x 基础四:json与pickple

python中json库中的loadloadsdumpdumps的区别与用法