zoukankan      html  css  js  c++  java
  • 【python】构造字典类型字典

    字典类型字典:就是包含字典类型的字典,如{'sss': {'ss': 'dddsdsdsd'}}

    构造方式:

    a={}
    b="sss"
    a[b]={}
    a[b]['ss'] = "dddsdsdsd"
    print  a
    》》》{'sss': {'ss': 'dddsdsdsd'}}
    

    应用:

    import  sys,os,re
    oui_dict={}  ###构造字典
    tmp_fp = open("C:\Users\Administrator\Desktop\mac.py-master\mac.py-master\src\macpy\oui.txt", 'rb')
    while True:
        current_line=tmp_fp.readline() ###读取一行进行如下判断
        if current_line:
            m = re.match(r"^[0-9A-Z]{6}", current_line)  ###对所读到的行进行正则匹配
            if m:  ###若匹配成功,则进入,否则接着进入while循环往下读
                tmp = current_line.split('		')
                mac_24 = tmp[0].split('    ')[0]
                if oui_dict.get(mac_24, None):###get函数不返回none。get获取oui_dict中mac24属性值,所没有返回none
                    oui_dict[mac_24]['com'] += ' / ' + tmp[1].strip()##往字典类型字典添加数据
                    ####正则匹配成功再往下读3行
                    oui_dict[mac_24]['addr'] += ' / ' + tmp_fp.readline().strip()
                    oui_dict[mac_24]['re'] += ' / ' + tmp_fp.readline().strip()
                    oui_dict[mac_24]['co'] += ' / ' + tmp_fp.readline().strip()
                else:####get函数返回none
                    oui_dict[mac_24] = {}
                    oui_dict[mac_24]['com'] = tmp[1].strip()##往字典类型字典添加数据
                     ####正则匹配成功再往下读3行
                    oui_dict[mac_24]['addr'] = tmp_fp.readline().strip()
                    oui_dict[mac_24]['re'] = tmp_fp.readline().strip()
                    oui_dict[mac_24]['co'] = tmp_fp.readline().strip()
        else:###文档读到再无数据跳出while循环
            break
    

    oui.txt文档如下: 

  • 相关阅读:
    电力项目七--js控制文字内容过长的显示和文本字数的显示
    电力项目六--运行监控设计
    Maven开发系统
    SSH电力项目一 搭建Hibernate框架
    网站添加用户风险测评
    tomcat中文配置
    Tomcat映射路径的配置方法
    java中计算时间差
    NSTimer+倒计时功能实现
    设置UITextView光标从起始位置开始
  • 原文地址:https://www.cnblogs.com/paulwinflo/p/5848339.html
Copyright © 2011-2022 走看看