LLM系列:1.python入门:7.字典型对象(dict)
字典型对象(dict)一. 字典基础字典dict是Python中无序的可变容器。它由一个个键值对(Key-Value)构成。字典也被称作关联数组或者哈希表。1. 字典的创建外侧使用大括号{}圈定内部是由冒号:连接的键值对不同键值对之间用逗号,分隔。核心规则 (Point)键Key必须是独一无二的且只能使用不可变类型对象充当如数字、字符串、元组。值Value可以是任意类型对象如列表、字典等可变类型均可。(1). 直接创建与空字典# 直接创建字典d{A:1,B:2,C:3}# 包含不同 Key 类型的字典d1{1:1,A:2,(1,):1}# 创建空字典dn{}(2). 使用 dict() 函数创建字典由于字典数据结构特殊dict()函数的输入要求也较为特殊。方法一传入包含双元素元组的列表传入一个列表列表内的元素必须是长度为 2 的元组。元组的第一个元素变为 Key必须是不可变类型第二个元素变为 Value。dict([(1,4),(2,3)])# 结果为{1: 4, 2: 3}方法二通过关键字参数赋值赋值过程将转化为字典的对应关系变量名变为 Key(自动转化为字符串)变量值变为 Value。此方法只能创建Key为字符串类型的字典。dict(a1,b2)# 结果为{a: 1, b: 2}2. 字典的基础索引字典由于其无序性不支持通过数字位置下标索引而是通过输入 Key 来查找对应的 Value。(1). 一般索引方法dict[key]d{A:1,B:2,C:3}# 查找 key 为 A 的 Valued[A]# 结果为 1# 因为字典是可变对象可以通过索引直接修改或新增键值对d[A]2# 修改已有 Key 的值d[D]4# 增加新的 Key-Value 对注如果使用dict[key]查找了一个不存在的 Key程序会直接报错KeyError。二. 字典常用方法1. get - 安全获取键值作用获取字典中指定键的值。与直接索引不同当对应键不存在时不会报错而是返回指定的默认值。dict.get(key,defaultNone)参数键 (key) 需要查找的目标键名称Any通常为不可变类型。默认值 (default) 可选参数当查找的键不存在时返回的默认值Any。如果不写默认返回None。返回值成功 键存在时返回对应的 Value 值Any键不存在时返回设定的默认值Any。示例d1{1:1,A:2,(1,):1}# 键存在返回对应的值d1.get(A)# 返回 2# 键不存在不写第二个参数无任何显式报错和输出 (返回 None)d1.get(3)# 键不存在指定返回 Errord1.get(3,Error)# 返回 Error2. keys - 获取所有键作用提取并返回字典中所有的键Key。dict.keys()参数无参数None。返回值成功 返回一个包含字典所有键的视图对象dict_keys。若要进行列表操作可使用list()或tuple()函数将其转化。示例ddict(A1,B2,C3)# 获取所有键d.keys()# 结果为 dict_keys([A, B, C])# 转化为列表list(d.keys())# 结果为 [A, B, C]3. values - 获取所有值作用提取并返回字典中所有的值Value。dict.values()参数无参数None。返回值成功 返回一个包含字典所有值的视图对象dict_values。也可通过list()或tuple()函数转化。示例ddict(A1,B2,C3)# 获取所有值dvd.values()# 结果为 dict_values([1, 2, 3])# 转化为元组tuple(dv)# 结果为 (1, 2, 3)4. items - 获取所有键值对作用将字典中的每个键值对打包成元组形式进行返回。dict.items()参数无参数None。返回值成功 返回一个由每对(key, value)组成的视图对象dict_items。常用于循环遍历。示例ddict(A1,B2,C3)# 打包返回键值对did.items()# 结果为 dict_items([(A, 1), (B, 2), (C, 3)])# 转化为列表list(di)# 结果为 [(A, 1), (B, 2), (C, 3)]5. update - 更新字典作用使用另一个字典来更新当前字典。注更新是在原对象基础上直接修改。有新的部分则添加键重复的部分则覆盖更新其他保留。dict.update(other_dict)参数字典 (other_dict) 提供更新内容的字典对象或可迭代的键值对集合dict / Iterable。返回值成功 无返回值NoneType直接在原字典对象上进行修改。示例ddict(A1,B2,C3)d1dict(B2,C4,D5)# 使用 d1 更新 d# B 相同保留C 的值被覆盖为 4新增 D: 5d.update(d1)# 原字典 d 变为{A: 1, B: 2, C: 4, D: 5}6. setdefault - 默认赋值作用根据键是否存在有选择性地获取或修改字典。常用于为缺失的键设置初始默认值。dict.setdefault(key,defaultNone)参数键 (key) 需要判断和设置的备选键Any不可变类型。默认值 (default) 备选键对应的默认值Any。返回值成功 若原字典中该键存在则返回原字典中该键对应的 ValueAny若原字典中该键不存在则将该键值对添加至字典中并返回设定的 default 值Any。示例ddict(A1,B2,C3)# 1. 备选键 A 已存在# 返回原对应值 1输入的参数 5 无任何作用原字典不改变val1d.setdefault(A,5)# 2. 备选键 D 不存在# 返回输入的参数 5并将 D: 5 添加进原字典val2d.setdefault(D,5)# d 变为 {A: 1, B: 2, C: 3, D: 5}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2523632.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!