python实战:python处理json格式的文件

目录

1. 读取JSON文件

2. 写入JSON文件

3. 处理JSON数据

4. 格式化JSON数据

5. 文件读取写入带中文案例

总结


 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它已经成为了现代Web应用程序中最常用的数据格式之一。在Python中,我们可以使用内置的json模块来处理JSON格式的文件。本文将介绍如何使用Python处理JSON格式的文件。

1. 读取JSON文件

在Python中,我们可以使用json模块的load()函数来读取JSON格式的文件。load()函数将JSON格式的字符串转换为Python对象。下面是一个读取JSON文件的示例代码:
 

import json

# 读取JSON文件
with open('data.json', 'r') as f:
    data = json.load(f)

# 打印读取的数据
print(data)

上面的代码中,我们使用了Python的with语句来打开文件并自动关闭文件。json.load()函数将JSON格式的文件读取到Python对象data中。最后,我们打印读取的数据。

2. 写入JSON文件

在Python中,我们可以使用json模块的dump()函数将Python对象转换为JSON格式的字符串,并将其写入到文件中。下面是一个写入JSON文件的示例代码:
 

import json

# 定义一个Python字典
data = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

# 将Python字典写入JSON文件
with open('data.json', 'w') as f:
    json.dump(data, f)

print("写入完成")

上面的代码中,我们定义了一个Python字典data,然后使用json.dump()函数将其写入到JSON文件中。最后,我们打印出“写入完成”。

3. 处理JSON数据

在Python中,我们可以使用json模块将JSON格式的字符串转换为Python对象。下面是一个处理JSON数据的示例代码:
 

import json

# 定义一个JSON字符串
json_str = '{"name": "steverocket", "age": 25, "city": "New York"}'

# 将JSON字符串转换为Python对象
data = json.loads(json_str)

# 打印Python对象
print(data)  # {'name': 'steverocket', 'age': 25, 'city': 'New York'}

# 访问Python对象的属性
print(data['name']) # steverocket
print(data['age']) # 25
print(data['city']) # New York

上面的代码中,我们定义了一个JSON字符串json_str,然后使用json.loads()函数将其转换为Python对象data。最后,我们可以访问Python对象的属性,例如data['name']、data['age']和data['city']。

4. 格式化JSON数据

在Python中,我们可以使用json模块的dumps()函数将Python对象转换为JSON格式的字符串,并格式化输出。下面是一个格式化JSON数据的示例代码:

import json

# 定义一个Python字典
data = {
    "name": "steverocket02",
    "age": 26,
    "city": "New York"
}

# 将Python字典转换为JSON格式的字符串,并格式化输出
json_str = json.dumps(data, indent=4)

# 打印JSON格式的字符串
print(json_str)
# 输出
# {
#     "name": "steverocket02",
#     "age": 26,
#     "city": "New York"
# }

上面的代码中,我们使用json.dumps()函数将Python字典data转换为JSON格式的字符串,并使用indent参数指定缩进量。最后,我们打印格式化后的JSON字符串。

5. 文件读取写入带中文案例

import json, time

infos = {"_id": "description", "name": "python", "filename": "中文", "os": ["abcd", "hello", "www"], "blog": WEIXIN_URL}
infos["time"] = time.time()  # 动态修改json文件内容

# 生成json文件
def write_json_file(file_name, infos):
    with open(file_name, "w") as jsonf:
        jsonf.write(json.dumps(infos))

def read_json_file(file_name):
    # 读取json文件的内容
    with open(file_name, 'r') as jsonf:
        file_info = json.load(jsonf)
        print(file_info, type(file_info))

        filename = file_info["filename"]
        print(filename)

        infos = json.dumps(file_info, sort_keys=True, indent=4)
        print(infos, type(infos))

if __name__ == '__main__':
    file_name = "desc.json"
    write_json_file(file_name, infos)
read_json_file(file_name)

 生成的文件

 

输出内容:

{'_id': 'description', 'name': 'python', 'filename': '中文', 'os': ['abcd', 'hello', 'www'], 'blog': 'https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q', 'time': 1684482364.7974849} <class 'dict'>

中文

{

    "_id": "description",

    "blog": "https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q",

    "filename": "\u4e2d\u6587",

    "name": "python",

    "os": [

        "abcd",

        "hello",

        "www"

    ],

    "time": 1684482364.7974849

} <class 'str'>

总结

在Python中,我们可以使用json模块来处理JSON格式的文件。我们可以使用json.load()函数读取JSON文件,使用json.dump()函数将Python对象写入JSON文件。我们还可以使用json.loads()函数将JSON格式的字符串转换为Python对象,使用json.dumps()函数将Python对象转换为JSON格式的字符串,并格式化输出。掌握这些技巧可以使我们更好地处理JSON格式的数据。


更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。

或者点击下方链接


关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想把专业领域的技https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SteveRocket

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值