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

Python 字典Dictionary简介

字典Dictionary

字典(Dictionary)是Python中一种可变的、有序的键值对集合。每个键(key)必须是唯一的且不可变的,值(value)可以是任意数据类型。

特点
  • 键值对
  • 可变性:可添加、修改、删除
  • 有序性:保持插入顺序
  • 键必须是不可变类型
  • 动态调整大小
创建字典
# 空字典
empty_dict = {}# 直接创建
person = {'name': 'migu', 'age': 42}# 嵌套字典
nested_dict = {'user1': {'name': 'zhangsan', 'age': 30},'user2': {'name': 'lisi', 'age': 35}
}# 从键值对创建
person = dict(name='zhangsan', age=30, city='shanghai')# 从可迭代对象创建
person = dict([('name', 'zhangsan'), ('age', 30)])# 从键的迭代器和值的迭代器创建
keys = ['name', 'age']
values = ['zhangsan', 30]
person = dict(zip(keys, values))# 字典推导式
# 创建数字平方的字典
squares = {x: x*x for x in range(5)}
print(squares)  # 输出: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}# 从列表创建字典
names = ['zhangsan', 'lisi', 'wangwu']
name_dict = {name: len(name) for name in names}
print(name_dict)  # 输出: {'zhangsan': 8, 'lisi': 4, 'wangwu': 6}
访问字典

get(key[, default]) # 如果键存在,返回其值;如果不存在,插入键并设置默认值

person = dict(name='zhangsan', age=30, city='shanghai')
print(person.get('name'))      # 输出: zhangsan
print(person.get('age'))    # 输出 : 30
print(person.get('city', 170))  # 输出: shanghaiheight = person.setdefault('height', 175)print(height)  # 输出: 175
print(person) # 输出: {'name': 'zhangsan', 'age': 30, 'city': 'shanghai', 'height': 175}
添加和修改元素
# 使用另一个字典或可迭代对象更新当前字典
dict1 = {'a': 1, 'b': 2}
dict1.update({'b': 3, 'c': 4})  # 更新b,添加c
print(dict1)  # 输出: {'a': 1, 'b': 3, 'c': 4}# 更新
dict1.update(d=5, e=6)
print(dict1)  # 输出: {'a': 1, 'b': 3, 'c': 4, 'd': 5, 'e': 6}
删除元素

# pop(key[, default]) 删除指定键并返回其值,如果键不存在且提供了默认值,则返回默认值,否则报错

v1 = person.pop('age') # 30
v2 = person.pop('sex', 'unknown')   # unknown

# popitem() 删除并返回最后插入的键值对(LIFO顺序)

v3 = dict1.popitem()   # 输出: ('e', 6)
print(v3)

# clear() 清空字典

person.clear()
print(person)  # 输出: {}
字典视图
dict1 = {'a': 1, 'b': 3, 'c': 4, 'd': 5, 'e': 6}
keys = dict1.keys()   # 返回字典所有键的视图对象
values = dict1.values() # 返回字典所有值的视图对象
items = dict1.items() # 返回字典所有键值对的视图对象
print(keys)  # 输出: dict_keys(['a', 'b', 'c', 'd', 'e'])   
print(values)  # 输出: dict_values([1, 3, 4, 5, 6])
print(items)  # 输出: dict_items([('a', 1), ('b', 3), ('c', 4), ('d', 5), ('e', 6)])
http://www.jsqmd.com/news/39290/

相关文章:

  • 2025年手动升降柱批发厂家权威推荐榜单:液压升降柱/电动升降柱/全自动升降柱源头厂家精选
  • 2025年船舶下水气囊生产厂家权威推荐榜单:平台底部支持气囊/高压橡胶气囊/沉箱移运气囊源头厂家精选
  • 对接世界职业院校技能大赛标准,唯众打造高质量云计算实训室 - 教程
  • 2025年pc防火改性塑料定制厂家权威推荐榜单:耐寒改性pc/pc改性工艺/PC温度改性源头厂家精选
  • 实用指南:toLua[六] Examples 05_LuaCoroutine分析
  • 唤醒手腕2025年最新钉钉开放强大的平台钉钉机器人stream搭建部署详细教程(更新中)
  • 2025开源能源管理系统标杆:MyEMS 特性解析、社区生态与全场景落地实践
  • 电脑往小米手机里快速传输文件方法
  • 2025年涡街流量计制造厂权威推荐榜单:防爆式超声流量计/孔板流量计/电磁流量计源头厂家精选
  • 告别人工干预!C# 轻量级上位机自动联动 MES 与视觉检测
  • 2025 年 11 月数控滚齿机床厂家推荐排行榜,高速滚齿机,小微齿轮加工,车滚齿复合机床,双主轴数控车滚齿机床公司推荐
  • react 表单管理
  • 2025年拆迁补偿安置口碑推荐榜单:十大专业律所综合评测
  • jenkins构建序号自定义显示
  • 2025 年 11 月连接器厂家推荐排行榜,圆形/M12/M8/防水/水密/重载/传感器/工业/RJ45/以太网连接器公司精选
  • 2025年石岛红光板源头厂家综合评测:石岛红石材/中国黑石材/五莲灰石材源头厂家精选
  • 2025 年 11 月滚珠花键厂家推荐排行榜:圆筒形滚珠花键,法兰型滚珠花键,新型滚珠花键公司推荐
  • 2FSK 调制指数 、相关系数 、 频谱特性
  • 2025 年 11 月靶材厂家推荐排行榜,溅射/磁控溅射/旋转靶材,ITO/半导体/光学镀膜,陶瓷/金属/钛/铝/铜/钨/钼/钽/硅/合金/稀土靶材公司推荐
  • 2、JDBC快速入门
  • 2025 年 11 月高考文化课集训/艺考文化课集训机构推荐排行榜,全日制集训,封闭式管理,重点高中师资,冲刺提分保障!
  • 2025 年 11 月滚珠花键厂家推荐排行榜,圆筒形滚珠花键,法兰型滚珠花键,新型滚珠花键公司推荐,专业选型与高效传动解决方案
  • Qwen Code CLI - Windows 使用
  • [电调]AM32电调调参系列 —— Motor KV参数分析
  • 【Android】【面试】Handler/Looper 相关的知识点和面试常见问题 - 指南
  • 2025年AI数字人获客公司权威推荐榜单:AI公域获客/AI矩阵获客/AI全域获客源头公司精选
  • 模式识别与机器学习课程笔记(3):统计决策中的经典学习手段
  • 11/13
  • 剪映高级感口播字幕预设220M850款轻量合集,拖拽生成商业级动态文字(Win_Mac通用)
  • linux 云主机 pip 安装配置 letsencrypt certbot 为多个域名生成免费 https 证书实录 - Leone