Python简单访问多层嵌套的字典

dic = {"a1": {"a2": {"a3": {"a4": {"a5": {"a6": "6", "a7": "7"}}}}}}


def JSON_Msg_Read_and_Update(Act, JSON, Keys, Data):
    # Act 操作 , 'r'读取 , 'u'更新
    # JSON 原始数据
    # Keys 要查询的Key列表 , ['Key1','Key2,'......]
    # Data是需修改的数据 , 读取模式下 Data = None
    if Act == "r":  # 读取模式
        Key = "JSON"  # 把Key转化为字符串
        for i in Keys:  # 循化Keys列表
            Key = Key + "['%s']" % i  # 把循环字符拼接到Key变量
        Result = eval(Key)  # 执行字符串表达式并返值
        return Result
    elif Act == "u":  # 更新模式
        Key = "JSON"
        for i in Keys:
            Key = Key + "['%s']" % i
        Key = Key + "='%s'" % Data  # 把需要修改的内容拼接到Key变量
        exec(Key)  # 执行字符串代码
        Result = JSON
        return Result


# 读取模式
print(JSON_Msg_Read_and_Update("r",dic,["a1","a2","a3","a4","a5",],None,))

# 读取模式
print(JSON_Msg_Read_and_Update("u",dic,["a1","a2","a3","a4","a5","a6",],10,))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值