【Python自动化测试6】字典与集合知识讲解

本文详细讲解了Python中的字典和集合,包括它们的作用、操作方法以及注意事项。字典是键值对存储,适用于自动化测试中的数据存储,如接口测试用例;集合用于数据去重。介绍了字典的查询、新增、修改、删除操作以及集合的添加、删除元素方法。
摘要由CSDN通过智能技术生成

一、前言

  本文章主要讲解的是关于Python中字典与集合的操作、常用方式、注意事项等内容,是字典与集合的专题讲解。

系列文章推荐:
  系列文章1:【Python自动化测试1】遇见Python之美
  系列文章2:【Python自动化测试2】Python安装配置及PyCharm基本使用
  系列文章3:【Python自动化测试3】初识数据类型与基础语法
  系列文章4:【Python自动化测试4】字符串知识总结
  系列文章5:【Python自动化测试5】列表与元组知识总结

  大部分内容都是在后续的自动化文章中会使用到的内容,小部分内容了解即可,初识Python的同学建议都了解一下,话不多说,快来一起看看吧~

二、字典讲解

2.1 字典作用

  字典的作用也是用于多个数据的存储,但和列表不同,使用花括号{}进行表示,字典是以键值对Key:value的形式存在的。字典的key必须唯一,同一个字典中不能够出现两个相同的key,如果出现则后者会代替前者,key必须也是不可变的类型,而可变的只有列表。

  同样都是用于存储多个数据,字典和列表的区别核心在于,键值对的字典可以给对应的value值加上一段“注释”,这个注释就可以用key的方式存在,当面临非常庞大的数据量进行存储时,我想找到其中的某一个带有特殊含义的元素,在列表中非常困难,但可以通过字典中key的方式进行检索,以找到我需要的数据元素。

  字典与列表也有不同,列表的存储是有序的,因为列表有索引下标,它在内存中所存储的位置就是0,1,2,3…对应的顺序关系,而字典中的数据存储在内存中是无序的,尽管数据看起来是A在B的前面,但实际上的排序在内存中可能是东一块西一块,在排序上和列表也有明显区别。

  字典在自动化测试中更多的是用于存储测试用例的数据,例如接口数据,存储测试用例数据是主要场景。

# 字典的形式以key:value的形式存在,这是不同于列表的
music_list = {
   "周杰伦rap01": "双截棍", "周杰伦rap02": "忍者", "薛之谦01": "演员", "薛之谦02": "你还要我怎样"}
print(type(music_list))
print(music_list)

在这里插入图片描述

2.2 字典key类型

  字典key在上面提到是不可变类型,在Python的不可变类型有元组、整型、布尔类型等,字典的key也可以用非字符串的数据类型来进行表示:

music_list2 = {
   1.11: "死了都要爱", True: "龙卷风", (1, 2): "如果我是DJ,你会爱我吗?", "魔性洗脑": "江南style"}

print(music_list2)

在这里插入图片描述

  参考下列例子,如果以TrueFalse作为一个字典元素的key,那么请务必小心,数字1等于True的值,数字0等于False的值,也就意味着如果在字典中有一个key1,有一个keyTrue那么重复的内容则不会作为元素表示,如果你在表示一个元组时忘记加逗号,那么也会直接当做1来判断,此时如果你的字典中有key1的情况下,仍然会出现元素冲突,故此大家在真实的项目中尽可能不要使用以下的数据作为一个字典元素的key,很可能会造成数据丢失的情况,字典长度也会发生变化,毕竟在字典中不允许存在相同的key

music_list2 = {
   1: "死了都要爱", True: "龙卷风"
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值