Python接口自动化测试框架(基础篇)-- 常用数据类型dict

简介: 这篇文章详细介绍了Python中字典(dict)数据类型的使用,包括字典的创建、取值、增删改操作以及内置函数的应用,并探讨了字典的扩展特性,如键的唯一性和不可变性。

前言

接下来的两篇是讲可变数据类型,最后讲dict,从作者使用经验来看,常用的数据类型顺序应该是dict、list、str、tuple、bool(常用作判断条件)、int。<当然还有其他人有不同的看法>

image.png

字典

关键字:dict,符号{},它是可变容器模型且可存任意类型对象;以key:value的形式保存数据,key:唯一,不可迭代的数据类型:int float 布尔值 元组 &value:可以包含任意数据类型:int float str list tuple dict 布尔值

创建字典
  • 代码举例,不同不可变的数据类型为key的情形
dict_1 = {
   
   }  # 表示空字典

dict_2 = {
   
   "a":"b"}

dict_3 = {
   
   (1,):2,1.1:2,True:False}
取值方式
dict_1 = {
   
   "k1":"v1"}

dict_1[key] # 即获取指定key的值

dict_1.get(key) #获取key的值,不存在返回none,较上一个字典取值方法灵活
增删改
  • 增改:赋值运算,如果key不存在,就是新增,反之就是修改
dict_1 = {
   
   }
dict_1["key"] = "value" 

print(dict_1) # 输出:{"key":"value"}
  • dict删除除了del其他都是通过函数实现
dict_1 = {
   
   "k1":"v1","ke":"ve"}

v = dict_1.pop("k1")  # 删除函数,并返回删除key的value

print(v) # 输出:v1

dict_2 = dict_1.popitem()  # 随机删除一组key:value并返回tuple

print(dict_2) # 输出:("ke","ve")

clear() # 清空字典 没有返回值,原dict_1会变成{}

del dict_1[key] 删除指定key
  • update更新函数只能是dict类型
dict1 = {
   
   "k1":"v1"}

dict1.update({
   
   1:2})

print(dict1) # 输出:{'k1': 'v1', 1: 2}
内置的函数
  • items(),其中dict的键值对成为一个元组的元素,返回list形式,但不是list数据类型,而是dict_items
dict1 = {
   
   "ke":"ve","k1":"v1"}

li = dict1.items()

print(li) # 输出:dict_items([{"ke":"ve"},{"k1":"v1"}])
  • values(),获取dict对象的所有value,以list形式,但不是任何类型,而是dict_values
dict1 = {
   
   "ke":"ve","k1":"v1"}

li = dict1.values() 

print(li) # dict_values(['ve', 'v1'])
  • keys(),获取dict对象的所有key,以list形式,但不是任何类型,而是dict_keys
dict_1 = {
   
   "ke":"ve","k1":"v1"}

li = dict_1.keys()

print(li) # 输出:dict_keys(['ke', 'k1'])
  • len() 计算变量的长度,在dict中是统计key的总数
  • has_key(key) 用来判断key是否存在dict对象中,否则返回False
dict1 = {
   
   "k1":"1","a":"b","k1":"2"}

b = dict1.has_key("kk")

# Python 3.X 不支持该方法。
print b # 输出:False
扩展特性

咱们知道dict类型的key是必须唯一,不可变数据类型,如果key出现重复,它只会记住最后一个值


dict1 = {
   
   "k1":"1","a":"b","k1":"2"}

print(dict1) # 输出:{"k1":"2","a":"b"}

总结

在介绍完python常用数据类型之后,各位同学应该总结一下

python数据类型基本操作.png

相关文章
|
4天前
|
设计模式 前端开发 JavaScript
自动化测试框架设计原则与最佳实践####
本文深入探讨了构建高效、可维护的自动化测试框架的核心原则与策略,旨在为软件测试工程师提供一套系统性的方法指南。通过分析常见误区,结合行业案例,阐述了如何根据项目特性定制自动化策略,优化测试流程,提升测试覆盖率与执行效率。 ####
24 6
|
4天前
|
人工智能 前端开发 测试技术
探索软件测试中的自动化框架选择与优化策略####
本文深入剖析了当前主流的自动化测试框架,通过对比分析各自的优势、局限性及适用场景,为读者提供了一套系统性的选择与优化指南。文章首先概述了自动化测试的重要性及其在软件开发生命周期中的位置,接着逐一探讨了Selenium、Appium、Cypress等热门框架的特点,并通过实际案例展示了如何根据项目需求灵活选用与配置框架,以提升测试效率和质量。最后,文章还分享了若干最佳实践和未来趋势预测,旨在帮助测试工程师更好地应对复杂多变的测试环境。 ####
20 4
|
10天前
|
机器学习/深度学习 前端开发 测试技术
探索软件测试中的自动化测试框架选择与优化策略####
本文深入探讨了在当前软件开发生命周期中,自动化测试框架的选择对于提升测试效率、保障产品质量的重要性。通过分析市场上主流的自动化测试工具,如Selenium、Appium、Jest等,结合具体项目需求,提出了一套系统化的选型与优化策略。文章首先概述了自动化测试的基本原理及其在现代软件开发中的角色变迁,随后详细对比了各主流框架的功能特点、适用场景及优缺点,最后基于实际案例,阐述了如何根据项目特性量身定制自动化测试解决方案,并给出了持续集成/持续部署(CI/CD)环境下的最佳实践建议。 --- ####
|
11天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
46 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
10天前
|
测试技术 API Android开发
探索软件测试中的自动化框架选择与实践####
本文深入探讨了软件测试领域内,面对众多自动化测试框架时,如何依据项目特性和团队需求做出明智选择,并分享了实践中的有效策略与技巧。不同于传统摘要的概述方式,本文将直接以一段实践指南的形式,简述在选择自动化测试框架时应考虑的核心要素及推荐路径,旨在为读者提供即时可用的参考。 ####
|
12天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
29 1
|
9天前
|
安全 API 网络架构
Python中哪个框架最适合做API?
本文介绍了Python生态系统中几个流行的API框架,包括Flask、FastAPI、Django Rest Framework(DRF)、Falcon和Tornado。每个框架都有其独特的优势和适用场景。Flask轻量灵活,适合小型项目;FastAPI高性能且自动生成文档,适合需要高吞吐量的API;DRF功能强大,适合复杂应用;Falcon高性能低延迟,适合快速API开发;Tornado异步非阻塞,适合高并发场景。文章通过示例代码和优缺点分析,帮助开发者根据项目需求选择合适的框架。
27 0
|
12天前
|
机器学习/深度学习 自然语言处理 物联网
探索自动化测试框架的演变与未来趋势
随着软件开发行业的蓬勃发展,软件测试作为保障软件质量的重要环节,其方法和工具也在不断进化。本文将深入探讨自动化测试框架从诞生至今的发展历程,分析当前主流框架的特点和应用场景,并预测未来的发展趋势,为软件开发团队选择合适的自动化测试解决方案提供参考。
|
12天前
|
Web App开发 测试技术 数据安全/隐私保护
自动化测试的魔法:使用Python进行Web应用测试
【10月更文挑战第32天】本文将带你走进自动化测试的世界,通过Python和Selenium库的力量,展示如何轻松对Web应用进行自动化测试。我们将一起探索编写简单而强大的测试脚本的秘诀,并理解如何利用这些脚本来确保我们的软件质量。无论你是测试新手还是希望提升自动化测试技能的开发者,这篇文章都将为你打开一扇门,让你看到自动化测试不仅可行,而且充满乐趣。
|
6月前
|
存储 Python
一文掌握python数组字典dict()的全部用法(零基础学python(三))
一文掌握python数组字典dict()的全部用法(零基础学python(三))