python JSON文件读写为dict

因为许多网上的指导都是一条json和一条dic的读写,因此,写个博客记录一下多个json和dict的文件读取

从json文件(多行)读取为dict,多个dict保存为list:

def read_json(readPath):
    with open(readPath, "r", encoding='utf-8') as r:
        dics = [json.loads(line.strip()) for line in r.readlines()]
    #print(dics)
    return dics

将多个dict的list写成json文件(多行):

def write(dics, writePath):
    with open(writePath, "w", encoding='utf-8') as w:
        for dic in dics:
            w.write(json.dumps(dic, ensure_ascii=False)+"\n")  # 写为一行
            #w.write(json.dump(dic, indent=2, sort_keys=True, ensure_ascii=False)+"\n")  # 每条写为多行,缩进2空格,中文字符不转义成Unicode

Over!

附加:单个dict和json文件的读写:

从json文件(一个dict可以打印成多行或一行)读取为一个dict:

def read_json_1dict(path):
    """
    读取json,用于一个dict
    :param path: 路径
    :return: 一个dict
    """
    with open(path, "r", encoding='utf-8') as r:
        dic = json.load(r)
    #print(dic)
    return dic

将一个dict写成json文件(多行和单行显示)

def write_json_2format_1dict(dic, jsonFile):
    """
    一个dict写成json文件,两个可视化使用
    :param dic: 一个dict
    :param jsonFile: 路径
    :return:
    """
    with open(jsonFile, "w", encoding='utf-8') as w:
        w.write(json.dumps(dic, ensure_ascii=False)+"\n")  # 写为一行
    with open(jsonFile[:-5]+"_mulLine.json", "w", encoding='utf-8') as w:
        w.write(json.dumps(dic, indent=4, sort_keys=False, ensure_ascii=False)+"\n")  # 写为多行

 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值