当前位置: 代码网 > it编程>前端脚本>Python > python中json.dumps和json.dump区别

python中json.dumps和json.dump区别

2025年01月01日 Python 我要评论
1、json.dumps和json.dump的区别json.dumps()是将 python 对象序列化为 json 格式的字符串。如果你想将 json 数据写入文件,可以将json.dumps()生

1、json.dumps和json.dump的区别

json.dumps() 是将 python 对象序列化为 json 格式的字符串。如果你想将 json 数据写入文件,可以将 json.dumps() 生成的字符串写入文件,或者更直接地使用 json.dump() 函数,它会直接将 python 对象序列化写入文件。

下面是两个方法,一是使用 json.dumps() 然后写入文件,二是使用 json.dump() 直接写入文件。

2、使用 json.dumps() 然后写入文件

import json

data = {"name": "alice", "age": 30, "is_student": false}

# 序列化为 json 字符串
json_str = json.dumps(data, indent=4)

# 将 json 字符串写入文件
with open('output.json', 'w', encoding='utf-8') as file:
    file.write(json_str)

3、使用 json.dump() 直接写入文件

import json

data = {"name": "alice", "age": 30, "is_student": false}

# 直接将 json 数据写入文件
with open('output.json', 'w', encoding='utf-8') as file:
    json.dump(data, file, indent=4)

4、json.dump() 参数

  • fp:文件对象,表示要写入的文件。

  • indent:指定缩进层级,使得结果更具可读性。如果为 none,则紧凑输出;如果为整数,表示每层缩进的空格数;如果为字符串,则用于每层的缩进。
  • ensure_ascii:如果为 true,所有非 ascii 字符将会被转义为 \uxxxx 形式。默认值为 true
  • sort_keys:布尔值,表示是否对字典的key按字母顺序排序。
  • separators:元组,指定项目分隔符和键值分隔符。
import json

data = {"name": "alice", "age": 30, "languages": ["english", "french"], "is_student": false}

with open('output.json', 'w', encoding='utf-8') as file:
    json.dump(data, file, indent=4, ensure_ascii=false, sort_keys=true)

json.dumps() 的参数可见博客json.dumps的参数

到此这篇关于python中json.dumps和json.dump区别的文章就介绍到这了,更多相关python json.dumps和json.dump内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com