Python中json.dumps() json.dump()的区别

本文介绍了Python中json模块的dumps()和dump()以及loads()和load()函数的使用。dumps()和loads()用于字符串与JSON对象之间的转换,而dump()和load()则涉及文件操作。dumps()与dump()的区别在于dump()需要额外的文件对象参数。示例代码展示了dumps()和loads()的正确用法,以及dump()缺少文件对象参数引发的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、介绍

  • json.dumps() 与 json.loads() 成对出现
  • json.dump() 与 json.load() 成对出现

dumps() 与 dump() 作用相同,均是为了将json数据转成string类型数据;loads() 与 loads() 作用相同,均是为了将json string数据转成json类型数据

二、json.dumps() json.dump()区别

import json
info = {'name': 'shanshan', 'age': 1}
info2 = json.dumps(info)
print("-------------dumps and loads-------------------")
print("info2={}, type={}".format(info2, type(info2)))
info3 = json.loads(info2)
print("info3={}, type={}".format(info3, type(info3)))

print("-------------dumps and loads-------------------")
info4 = json.dump(info)
print("error info4={}, type={}".format(info4, type(info4)))

输出结果:

Traceback (most recent call last):
  File "/Users/username/PycharmProjects/MyFirstPythonDemo/jsontest/Dumps.py", line 10, in <module>
    info4 = json.dump(info)
TypeError: dump() missing 1 required positional argument: 'fp'
-------------dumps and loads-------------------
info2={"name": "shanshan", "age": 1}, type=<class 'str'>
info3={'name': 'shanshan', 'age': 1}, type=<class 'dict'>
-------------dumps and loads-------------------

上述结果可以看到使用json.dump(info)程序报错,提示信息说的意思是缺少一个必要参数fp,fp实质是一个文件对象。因此,可以发现dumps() 与 dump() 的参数不同,dump()需要多一个fp参数,作用是把转成的string类型数据放到这个文件中

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值