• Python——zip的用法_list-dict复合字典+dict.get()函数用法


    zip()函数的用法——list-dict复合字典

    zip()函数,返回N个元组的迭代器,其中每个元组包含了N个序列里对应的元素。
    zip()函数,接受多个序列,然后将每个序列对应位置的元素组织在一起组成一个新的元组,最后返回由这些元组组成的列表。它的长度有参数序列中最短的长度决定。举个栗子:

    >>>zip([1,2,3],('a','b','c'))
    >>>[(1,'a'),(2,'b'),(3,'c')]
    
    • 1
    • 2
    # 定义一个list-dict的复合数组存放图像对应的标注员name、标注日期、相机类型、图像名称
    """
    例如:
    imgname_list = ['id1','id2','id3','id4','id5']
    userlist = ['name1','name2','name3','name4','name5']
    placelist = ['place1','place2','place3','place4','place5']
    """
    xml_infos_zipped = zip(xml_paths_list, label_QC_staffs_list, label_QC_datetimes_list, xml_abspaths_list)
    
    # 定义list-dict的复合字典,list中每个元素为一个dict,dict的key包括:xml_path,abel_QC_staff,label_QC_datetime,xml_abspath
    xml_QCbaseinfo_compound_list = [dict(xml_path=xml_paths_i,label_QC_staff=label_QC_staffs_i,
                                       label_QC_datetime=label_QC_datetimes_i,xml_abspath=xml_abspath_i) 
                                  for xml_paths_i ,label_QC_staffs_i,label_QC_datetimes_i,xml_abspath_i in list(xml_infos_zipped)]
    # 将list-dict的复合字典转化为DataFrame格式
    df_xml_QCtables = pd.DataFrame(xml_QCbaseinfo_compound_list)
    >>>
    [{'xml_path': 'f9183.xml',
      'label_QC_staff': 'lin',
      'label_QC_datetime': '2022.08.09',
      'xml_abspath': '/xml质控脚本/f9183.xml'},
     {'xml_path': 'e186b.xml',
      'label_QC_staff': 'lin',
      'label_QC_datetime': '2022.08.09',
      'xml_abspath': '/xml质控脚本/e186b.xml'}]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    python dict.get()函数用法

    作用

    Python中的字典(Dictionary)是以键值对的形式存储数据的,get()方法可以返回指定键的值,如果该键不存在的话,返回默认值。

    语法

    dict.get(key, default=None)

    参数

    key:需要查找的键。 default:如果查找的键不存在的话,返回default的值。默认为None。

    举例

    dict = {"age":18,"weight":65}
    
    print(dict.get("age"))
    
    # 输出结果为:18
    
    print(dict.get("height"))
    
    # 由于字典dict中没有height这个键,返回的是默认值None。
    
    print(dict.get("height",0))
    
    # 将默认值改为0,输出结果为0
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    dict.get(key)和dict[key]的区别

    dict.get(key)和dict[key]在key值存在的情况下,都能得到对应的键值。但是当使用dict[key]时,key必须要存在,否则会报错。但是dict.get[key]中的key可以不存在,因为get方法有一个默认的参数None,当key不存在的时候,返回None。

  • 相关阅读:
    java实现pdf转为word
    想转行学软件测试担心哪些问题?
    【每日前端面经】2023-02-23
    k8s单master--测试环境集群搭建
    硬盘无法格式化怎么办?
    【移花接木】Maven项目结构调整解决方案
    ucos2源码分析---内核部分(三)
    mapbox使用marker创建html点位信息
    C语言自定义类型详解 —— 结构体、枚举、联合体
    Abnova PSMA磁珠解决方案
  • 原文地址:https://blog.csdn.net/weixin_42782150/article/details/126857992