栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 文件读取和覆盖写入 txt文件读取json数据,覆盖写入json数据并做容错处理

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 文件读取和覆盖写入 txt文件读取json数据,覆盖写入json数据并做容错处理

前言

        读取txt文件,重写里面某个key值,然后覆盖写入文件。
        如果覆盖写入失败,则回滚值未修改前的代码,避免错误写入下次运行报错

        这段代码,其实就是模仿SpringBoot实现Mysql的事务管理通过@Transactional注解的方式 ,如果程序报错就自动回滚未插入前的数据。防止后台报错的时候sql被插入了。

#!/usr/bin/env python
# -*- coding=utf-8 -*-
__author__ = 'Benjamin'
__CreateAt__ = '2021/11/15-15:15'


import json


def writeRpcInfoConfig(RpcKey,RpcValue):

    fileName = "../config/RpcInfoConfig.txt"
    # fileName = "RpcInfoConfig.txt"

    f = open(fileName, 'r',encoding="utf-8")
    f_data = f.read()
    f.close()

    f_dict = json.loads(f_data)
    f_dict_copy = f_dict.copy()

    RpcKeyValue = f_dict.get(RpcKey,None)
    if RpcKeyValue:
        # 修改,字段新增值
        # 字典合并
        RpcKeyValue.update(RpcValue)

    else:
        # 新增Key,并添加值
        f_dict[RpcKey] = RpcValue

    try:
        f = open(fileName, 'w')
        f.write(json.dumps(f_dict))
        f.close()
        print("新增成功")
    except:
        f = open(fileName, 'w')
        f.write(json.dumps(f_dict_copy))
        f.close()
        print("新增失败,回滚未修改前")

if __name__ == "__main__":
    print(writeRpcInfoConfig("test3.rpc",{"testKey":"testValue"}))


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/529642.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号