07-Python-字典(dict)介绍

简介: 07-Python-字典(dict)介绍

1. 字典

  • 定义:可以把字典理解为 键: 值 对的集合,但字典的键必须是唯一的。花括号 {} 用于创建空字典,注:字典也是可变类型

  1.1 常用方法

  • list(d):返回字典 d 中使用的所有键的列表
  • len(d):返回字典 d 中的项数
  • d[key]:返回 d 中以 key 为键的项。 如果映射中不存在 key 则会引发 KeyError
  • d[key] = value:将 d[key] 设为 value
  • del d[key]:将 d[key]d 中移除。 如果映射中不存在 key 则会引发 KeyError
  • key in d:如果 d 中存在键 key 则返回 True,否则返回 False
  • iter(d):返回以字典的键为元素的迭代器。 这是 iter(d.keys()) 的快捷方式
  • clear():移除字典中的所有元素
  • copy():返回原字典的浅拷贝
  • get(key[, default]):如果 key 存在于字典中则返回 key 的值,否则返回 default。 如果 default 未给出则默认为 None,因而此方法绝不会引发 KeyError
  • items():返回由字典项 ((键, 值) 对) 组成的一个新视图
  • keys():返回由字典键组成的一个新视图
  • pop(key[, default]):如果 key 存在于字典中则将其移除并返回其值,否则返回 default。 如果 default 未给出且 key 不存在于字典中,则会引发 KeyError
  • values():返回由字典值组成的一个新视图
  • reversed(d):返回一个逆序获取字典键的迭代器。 这是 reversed(d.keys()) 的快捷方式
  • setdefault(key[, default]):如果字典存在键 key ,返回它的值。如果不存在,插入值为 default 的键 key ,并返回 defaultdefault 默认为 None
  • update([other]):使用来自 other 的键/值对更新字典,覆盖原有的键。 返回 None

d | other:合并 dother 中的键和值来创建一个新的字典,两者必须都是字典。当 dother 有相同键时, other 的值优先(3.9新功能)

1. # -*- coding: utf-8 -*-
2. # @Time    : 2021/1/31
3. # @Author  : 大海
4. 
5. # 创建空字典
6. info = dict()
7. info1 = {}
8. 
9. d = dict(name='大海', age=27, base='大连', professional='测试工程师')
10. t = {'name': '大海', 'age': '27', 'base': '大连', 'professional': '测试工程师'}
11. f = {'red': 'a', 'blue': 'b', 'green': 'c'}
12. print(d)
13. # 返回键的列表
14. print(list(d))
15. 
16. # 返回字典 d 中的项数
17. print(len(d))
18. print(len(info))
19. 
20. # 返回 d 中以 key 为键的项。 如果映射中不存在 key 则会引发 KeyError
21. print(d['name'])
22. # print(info['name'])
23. 
24. 
25. # 将 d[key] 设为 value
26. d['name'] = '小白'
27. print(d)
28. 
29. # 将 d[key] 从 d 中移除。 如果映射中不存在 key 则会引发 KeyError
30. del d['age']
31. print(d)
32. 
33. # 如果 d 中存在键 key 则返回 True,否则返回 False
34. res = 'name' in d
35. print(res)
36. 
37. # 返回以字典的键为元素的迭代器。 这是 iter(d.keys()) 的快捷方式
38. keys = iter(d)
39. print(list(keys))
40. 
41. # 移除字典中的所有元素
42. d.clear()
43. print(d)
44. 
45. # 返回原字典的浅拷贝
46. t1 = t.copy()
47. print(t1)
48. print(id(t), id(t1))
49. 
50. # 如果 key 存在于字典中则返回 key 的值,否则返回 default。 如果 default 未给出则默认为 None,因而此方法绝不会引发 KeyError
51. age = t.get('age')
52. print(age)
53. birthday = t.get('birthday', '五月初四')
54. print(birthday)
55. birthday = t.get('birthday')
56. print(birthday)
57. 
58. # 返回由字典项 ((键, 值)) 组成的一个新视图
59. print(t.items())
60. 
61. # 返回由字典键组成的一个新视图
62. print(t.keys())
63. 
64. # 如果 key 存在于字典中则将其移除并返回其值,否则返回 default。 如果 default 未给出且 key 不存在于字典中,则会引发 KeyError
65. t.pop('base')
66. print(t)
67. 
68. # 返回由字典值组成的一个新视图
69. values = t.values()
70. print(values)
71. 
72. # 返回一个逆序获取字典键的迭代器。 这是 reversed(d.keys()) 的快捷方式
73. reversed(t)  # python3.8以上版本有效
74. print(t)
75. 
76. # 如果字典存在键 key ,返回它的值。如果不存在,插入值为 default 的键 key ,并返回 default 。 default 默认为 None
77. t.setdefault('base', '辽宁')
78. print(t)
79. t.setdefault('age', '28')
80. print(t)
81. 
82. # 使用来自 other 的键/值对更新字典,覆盖原有的键。 返回 None
83. f.update(red=1, blue=2)
84. print(f)
85. 
86. # 合并 d 和 other 中的键和值来创建一个新的字典,两者必须都是字典。当 d 和 other 有相同键时, other 的值优先
87. print(t | f)  # 3.9特性
88. 
89.


相关文章
|
1月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
162 1
|
2月前
|
存储 JSON 数据管理
Python字典:高效数据管理的瑞士军刀
Python字典基于哈希表实现,提供接近O(1)的高效查找,支持增删改查、遍历、合并等丰富操作,广泛应用于计数、缓存、配置管理及JSON处理。其灵活性与性能使其成为数据处理的核心工具。
452 0
|
2月前
|
存储 缓存 安全
Python字典:从入门到精通的实用指南
Python字典如瑞士军刀般强大,以键值对实现高效数据存储与查找,广泛应用于配置管理、缓存、统计等场景。本文详解字典基础、进阶技巧、实战应用与常见陷阱,助你掌握这一核心数据结构,写出更高效、优雅的Python代码。
85 0
|
3月前
|
存储 数据处理 Python
python dict的所有基础知识
python dict的所有基础知识
375 0
|
8月前
|
存储 人工智能 索引
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
|
10月前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
435 2
|
12月前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
214 1
|
存储 JSON 索引
一文让你彻底搞懂 Python 字典是怎么实现的
一文让你彻底搞懂 Python 字典是怎么实现的
439 13
|
存储 Java Serverless
【Python】字典
【Python】字典
139 1
|
存储 数据安全/隐私保护 Python
Python常用数据结构——字典的应用
Python常用数据结构——字典的应用
218 2

推荐镜像

更多
下一篇
oss云网关配置