python创建json文件并换行

 


 在 Python 中,您可以使用内置的json 模块创建和操作 JSON 文件。以下是如何创建一个 JSON 文件的步骤:

1、Json格式

JSON 数据的书写格式是键(名称)/值对。

JSON 值可以是:字符串(在双引号中)、数组(在中括号中)、数字(整数或浮点数)、逻辑值(true 或 false)、对象(在大括号中)、 null。

JSON有三种格式:

        (一)简单值的形式:数字、字符串、布尔值。

        (二)对象形式:JSON中对象的属性名必须是双引号,属性值如果是字符串也必须是双引号

           (三)数组形式

复制代码
1. 数据使用键值对表示,键和值之间使用冒号(:)分隔。
    例如:{"name": "John", "age": 30}
2. 键使用双引号(")包围,值可以是字符串、数字、布尔值、对象、数组或null。 
    例如:{"name": "John", "age": 30, "isStudent": true, "address": null}
3. 键值对之间使用逗号(,)分隔,最后一个键值对后不应有逗号。 
    例如:{"name": "John", "age": 30}
4. 字符串值使用双引号(")包围,可以包含任意Unicode字符序列,特殊字符可以使用转义字符表示。 
    例如:"Hello, World!", "I "love" JSON"
5. 数字可以是整数或浮点数,不使用引号包围。 
    例如:42, 3.14
6. 布尔值只有两个取值:truefalse,不使用引号包围。 
    例如:true, false
7. 数组使用方括号([])包围,值之间使用逗号分隔。 
    例如:[1, 2, 3, 4, 5]
8. 对象使用花括号({})包围,键值对之间使用逗号分隔。 
    例如:{"name": "John", "age": 30}
9. JSON是严格区分大小写的,键和字符串值都应该使用双引号包围。
10. JSON可以嵌套,允许在对象中包含对象或数组,或在数组中包含对象或其他数组。
11. JSON不支持注释,不允许在JSON数据中添加注释。
复制代码

 

2、创建json文件并换行

2.1、换行方法一:使用indent参数

1、导入json模块

2、创建Python字典对象

3、使用json.dumps()方法序列化字典

4、写入Json文件并实现换行

复制代码
 1 import json
 2 
 3 # 创建一个python字典
 4 data = {
 5     "name" : "John",
 6     "age"  : 30,
 7     "city" : "New York"
 8 }
 9 
10 # 将字典转换为Json字符串
11 '''
12 换行方法一:
13 Python 内置的json模块提供了json.dump()函数,它可以将json数据写入文件。
14 dump和dumps函数都提供了indent参数,可以指定缩进的空格数。通过设置indent参数为正整数,可以实现换行的效果。
15 '''
16 json_data = json.dumps(data,indent=4)
17 
18 # 将Json字符串写入文件
19 with open('data.json', 'w') as file:
20     file.write(json_data )
复制代码

2.2、换行方法二:使用separators参数

除了indent参数,json模块的dump和dumps函数还提供了separators参数,用于指定不同部分之间的分隔符。

通过设置separators参数,我们可以添加换行符到Json数据中。

复制代码
 1 import json
 2 
 3 # 创建一个python字典
 4 data = {
 5     "name" : "John",
 6     "age"  : 30,
 7     "city" : "New York"
 8 }
 9 
10 json_data = json.dumps(data,separators=(",\n", ": "))
11 print(json_data)
复制代码

输出结果如下:

在上面的代码中,通过将separators参数设置为{“, \n”, ": "},实现了在Json数据中的逗号后添加换行符的效果

 

 

posted @   taohuaxiaochunfeng  阅读(2295)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示

目录导航