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

相关文章
|
2月前
|
设计模式 前端开发 测试技术
告别脆弱:构建稳定UI自动化测试的3个核心策略
告别脆弱:构建稳定UI自动化测试的3个核心策略
323 113
|
2月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
194 1
|
2月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
2月前
|
SQL 安全 Linux
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
147 1
Metasploit Pro 4.22.8-20251014 (Linux, Windows) - 专业渗透测试框架
|
2月前
|
Linux 网络安全 iOS开发
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
194 1
Metasploit Framework 6.4.95 (macOS, Linux, Windows) - 开源渗透测试框架
|
3月前
|
缓存 监控 算法
唯品会item_search - 按关键字搜索 VIP 商品接口深度分析及 Python 实现
唯品会item_search接口支持通过关键词、分类、价格等条件检索商品,广泛应用于电商数据分析、竞品监控与市场调研。结合Python可实现搜索、分析、可视化及数据导出,助力精准决策。
|
3月前
|
机器学习/深度学习 人工智能 测试技术
EdgeMark:嵌入式人工智能工具的自动化与基准测试系统——论文阅读
EdgeMark是一个面向嵌入式AI的自动化部署与基准测试系统,支持TensorFlow Lite Micro、Edge Impulse等主流工具,通过模块化架构实现模型生成、优化、转换与部署全流程自动化,并提供跨平台性能对比,助力开发者在资源受限设备上高效选择与部署AI模型。
378 9
EdgeMark:嵌入式人工智能工具的自动化与基准测试系统——论文阅读
|
2月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
338 2
|
3月前
|
安全 Linux 网络安全
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架
299 2
Metasploit Pro 4.22.8-2025091701 (Linux, Windows) - 专业渗透测试框架

热门文章

最新文章

推荐镜像

更多