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

相关文章
|
20天前
|
人工智能 开发者 Python
Chainlit:一个开源的异步Python框架,快速构建生产级对话式 AI 应用
Chainlit 是一个开源的异步 Python 框架,帮助开发者在几分钟内构建可扩展的对话式 AI 或代理应用,支持多种工具和服务集成。
122 9
|
1月前
|
JSON 安全 中间件
Python Web 框架 FastAPI
FastAPI 是一个现代的 Python Web 框架,专为快速构建 API 和在线应用而设计。它凭借速度、简单性和开发人员友好的特性迅速走红。FastAPI 支持自动文档生成、类型提示、数据验证、异步操作和依赖注入等功能,极大提升了开发效率并减少了错误。安装简单,使用 pip 安装 FastAPI 和 uvicorn 即可开始开发。其优点包括高性能、自动数据验证和身份验证支持,但也存在学习曲线和社区资源相对较少的缺点。
76 15
|
30天前
|
关系型数据库 API 数据库
Python流行orm框架对比
Python中有多个流行的ORM框架,如SQLAlchemy、Django ORM、Peewee、Tortoise ORM、Pony ORM、SQLModel和GINO。每个框架各有特点,适用于不同的项目需求。SQLAlchemy功能强大且灵活,适合复杂项目;Django ORM与Django框架无缝集成,易用性强;Peewee轻量级且简单,适合小型项目;Tortoise ORM专为异步框架设计;Pony ORM查询语法直观;SQLModel结合Pydantic,适合FastAPI;GINO则适合异步环境开发。初学者推荐使用Django ORM或Peewee,因其易学易用。
|
1月前
|
人工智能 分布式计算 大数据
MaxFrame 产品评测:大数据与AI融合的Python分布式计算框架
MaxFrame是阿里云MaxCompute推出的自研Python分布式计算框架,支持大规模数据处理与AI应用。它提供类似Pandas的API,简化开发流程,并兼容多种机器学习库,加速模型训练前的数据准备。MaxFrame融合大数据和AI,提升效率、促进协作、增强创新能力。尽管初次配置稍显复杂,但其强大的功能集、性能优化及开放性使其成为现代企业与研究机构的理想选择。未来有望进一步简化使用门槛并加强社区建设。
74 7
精心整理python测试小技巧:第十六节
精心整理python测试小技巧:第十六节
精心整理python测试小技巧:第十五节
精心整理python测试小技巧:第十五节
精心整理python测试小技巧:第十四节
精心整理python测试小技巧:第十四节
|
2月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
2月前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
126 80