当前位置: 首页 > news >正文

python3字典

1 字典简介

  • 字典是一种可变容器模型,且可存储任意类型对象。
  • 字典每个基本元素都包括两个部分:
    • 键(key)和键对应的值(value)
  • 每个键值 key=>value 对用冒号: 分割,每个对之间用逗号(,)分割,整个字典包括在花括号{} 中
  • 语法:dictname={键:值,键:值,键:值,…}
  • 示例:
dict1={'aa':3,1:'cc',9:1,'dd':'bb'}
  • 字典中键必须是唯一的,但值则不必。
# 键若重复,后一个会将前一个覆盖
dict1={'aa':1,'cc':3,'ee':9,'gg':9,'cc':3}
  • 字典中值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组充当,而用列表就不行。

2 字典基本操作

2.1 创建字典

  • 使用大括号 { } 创建空字典
dict1={'a':3,'b':2,'c':9}
  • 使用内建函数 dict() 创建字典
dict1=dict({'a':3,'b':2,'c':9})

2.2 访问字典

  • 字典没有索引,通过键访问值
# 访问的键值对不存在会报错
dict1={'aa':1,'cc':3,'ee':9,'gg':9,'cc':3}
print(dict1['aa'])
# 访问不存在的键值对返回默认值,默认值可以省略
print(dict1.get('aa'))
print(dict1.get('dd','没有这个键值对'))

2.3 修改字典

num=100
str='hello'
dict1={num:str}
# 添加新的键值对
dict1[200]='world'
dict1.update({300:'python'})
# 修改键值对的值
dict1[200]='bug'

2.4 删除字典

  • 使用 del 关键字和给定键来删除字典中的元素
dict1={'aa':1,'cc':3,'ee':9}
del dict1['aa']
# 删除键值对时返回值
val=dict1.pop('ee')

2.5 合并字典

  • 使用update()方法将一个字典合并到另一个字典中
  • 如果两个字典中拥有相同的键,后一个字典中的值将覆盖前一个字典中的值
dict1={'a':1,'b':2,'c':3}
dict2={'d':4,'e':5,'f':6}
dict1.update(dict2)

2.6 遍历字典

  • 使用 for 循环来遍历字典中的所有键值对
dict1={'a':'hello','b':'world','c':'python'}
# 只遍历键
for key in dict1:print(key+':'+dict1[key])
# 直接遍历值
for value in dict1.values():print(value)
# 遍历键值对
for key,value in dict1.items():print(key+':'+value)
http://www.lryc.cn/news/574386.html

相关文章:

  • Docker 永久换源步骤
  • leetcode:98. 验证二叉搜索树
  • 大厂Java面试喜剧:谢飞机的奇幻之旅
  • 工业级无人机电调设计典范:南昌长空 ROCK 320A-H 技术参数详解
  • 使用Windows自带的WSL安装Ubuntu Linux系统
  • 60天python训练计划----day56
  • Java SE - 图书管理系统模拟实现
  • 【计算复杂度】普通卷积 VS 深度可分离卷积
  • react 的过渡动画
  • Redis基本介绍
  • 通过审计日志分析和摘要利用大型语言模型进行网络攻击检测
  • /var/lib/docker/overlay2目录过大怎么办
  • 项目上线(若依前后分离版)
  • MATLAB GUI界面设计 第三章——仪器组件
  • 【无刷电机FOC进阶基础准备】【04 clark变换、park变换、等幅值变换】
  • MultipartFile、File 和 Mat
  • 从0开始学习R语言--Day30--函数型分析
  • SQL Server2022版详细安装教程(Windows)
  • 63-差分电流检测电路
  • 【Verilog】Verilator的TestBench该用C++还是SystemC
  • docker方式启动Jenkins
  • Python训练营---DAY56
  • C#串口通讯实战指南
  • RAW图像简单可视化以及png、jpg的区别
  • 设计模式 - 抽象工厂
  • AI智能体——MCP 模型上下文协议
  • 71-Oracle Undo与Flashback管理(Guarantee设置)深度解析
  • vue3+ELInput无法输入的问题
  • 传输层协议UDP
  • 服务器中集群防御和单机防御分别是指什么?