加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python 通过函数的使用,将字典的深度搜索化简(减少循环次数)

发布时间:2020-12-20 12:43:49 所属栏目:Python 来源:网络整理
导读:其中涉及一些条件的判断: 循环实现:(dict,sheet均为字典,主要是row是sheet字典中最底层列表的某一行数据,这大致是一个筛选数据的过程 for key in dict.keys(): if key== " 日期 " : dict[key].append(sheet[key]) elif type(dict[key])!=type(dict): #

其中涉及一些条件的判断:

循环实现:(dict,sheet均为字典,主要是row是sheet字典中最底层列表的某一行数据,这大致是一个筛选数据的过程

            for key in dict.keys():
                if key=="日期":
                    dict[key].append(sheet[key])
                elif type(dict[key])!=type(dict):#如果dict[key]不是字典,那么说明它是存有数据的列表
                    dict[key].append(sheet[key][row])
                else:
                    for key2 in dict[key].keys():
                        if type(dict[key][key2])!=type(dict[key]):
                            dict[key][key2].append(sheet[key][key2][row])
                        else:
                            for key3 in dict[key][key2].keys():
                                dict[key][key2][key3].append(sheet[key][key2][key3][row])

函数实现:

        def updateDict(tmp,tmp_sheet):
            for key in tmp.keys():
                if type(dict) != type(tmp):
                    continue
                if type(tmp[key]) != type(tmp):
                    if key == "日期":
                        tmp[key].append(tmp_sheet[key])
                    else:
                        tmp[key].append(tmp_sheet[key][row])
                else:
                    updateDict(tmp[key],tmp_sheet[key])
        updateDict(dict,sheet)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读