• Python对JSON的操作 day3


    下面将为大家介绍如何使用python语言来编码和解码json对象;

    json串就是一个字符串,json串必须用双引号,不能使用单引号

    使用json函数需要导入json库,import json

    1、json.dumps: 将python对象编码成json字符串

    2、json.loads :将已编码的json字符串解码为python对象

    json.dump()和json.load()主要用来读写json文件函数

    1、json.dump() : 将json信息写入文件

    2、json.load() :读取json文件转为字典

    下面是举例说明:

    已知如下json串:
    d={ "error_code": 0, "stu_info": [ { "id": 314, "name": "矿泉水", "sex": "", "age": 18, "addr": "北京市昌平区", "grade": "摩羯座", "phone": "18317155663", "gold": 100 }, { "id": 315, "name": "矿泉水", "sex": "", "age": 27, "addr": "上海", "grade": "摩羯座", "phone": "18317155664", "gold": 100 } ] }

    一、将字典转换为字符串写入文件:

    1、方法1:

    with open('abc.json','w',encoding='utf-8') as fw:
        s = json.dumps(d,ensure_ascii=False,indent = 4)
        fw.write(s)
        #1、中文乱码问题 ensure_ascii=False
        #2、美观的问题 indent=n 的意思是每一个key前面加n个空格的意思
        #3、abc.json可将json的颜色打印出来

    2、方法2:

    with open('abc.json','w',encoding='utf-8') as fw:
        json.dump(d,fw,indent=4,ensure_ascii=False)
        #不需要手动的write一次,直接可写入文件(第一个传入字典,第二个传入文件)
        #此方法同上面两行代码的含义,更简单

    二、将文件的字符串转换为字典:

    1、方法1:

    with open('abc.txt',encoding='utf-8') as fr:
        result = fr.read()
        print('result,刚从文件里面读出来的:',type(result))
        dic = json.loads(result)
        print('dic,转换之后的',dic,type(dic))

    2、方法2:

    with open('abc.txt',encoding='utf-8') as fr:
        result= json.load(fr)
        print('result',result,type(result))
        # 直接读出文件内容,转为字典;此方法相当于上面方法1的代码含义

     帮助理解可参考博客:

    https://www.cnblogs.com/xiaomingzaixian/p/7286793.html

  • 相关阅读:
    一些命令
    DB-5:使用PowerDesigner连接数据库并生成ER图
    [原创]OpenEuler20.03安装配置PostgreSQL13.4详细图文版
    oss 视频转码
    java lambda groupby 的map顺序问题
    Springboot得到RabbitMQ队列消息的数量
    Rabbitmq 定时任务 (代码实现)
    Rabbitmq 定时任务
    Mac navicat 15
    Mac 重置 idea
  • 原文地址:https://www.cnblogs.com/candysalty/p/10972287.html
Copyright © 2020-2023  润新知