字典的定义
使用{},不过存储的元素是一个个的:键值对,如下语法:

使用{}存储原始,每一个元素是一个键值对
每一个键值对包含Key和Value(用冒号分隔)
键值对之间使用逗号分隔
Key和Value可以是任意类型的数据(key不可为字典)
Key不可重复,重复会对原有数据覆盖
字典不可用下标索引,而是通过Key检索Value
字典数据的获取
字典同集合一样,不可以使用下标索引
字典可以通过Key值来取得对应的Value
- my_dict={"A":100,"B":80,"C":60}
- print(my_dict["A"])
- print(my_dict["B"])
- print(my_dict["C"])
100
80
60
字典的嵌套
字典的Key和Value可以是任意数据类型(Key不可为字典) 那么,就表明,字典是可以嵌套的
内容获取类似于二维数组
- my_dict = {
- "sorce":{"A":77,"B":66,"C":33},
- "level":{"A":88,"B":86,"C":55},
- "grade":{"A":99,"B":96,"C":66}
- }
- print(my_dict["sorce"])
-
- print(my_dict["sorce"]["A"])
-
- print(my_dict["grade"]["C"])
{'A': 77, 'B': 66, 'C': 33}
77
66
字典的各种操作
编号 | 操作 | 说明 |
1 | 字典[Key] | 获取指定Key对应的Value值 |
2 | 字典[Key] = Value | 添加或更新键值对 |
3 | 字典.pop(Key) | 取出Key对应的Value并在字典内删除此Key的键值对 |
4 | 字典.clear() | 清空字典 |
5 | 字典.keys() | 获取字典的全部Key,可用于for循环遍历字典 |
6 | len(字典) | 计算字典内的元素数量 |
新增与更新元素 [Key] = Value
语法:字典[Key] = Value,结果:字典被修改,新增了元素
注意:字典Key不可以重复,所以对已存在的Key执行上述操作,就是更新Value值
- my_dict={"A":100,"B":80,"C":60}
- my_dict["D"]=40#新增加内容
- print(my_dict)
-
- my_dict["B"]=88#更新已有内容
- print(my_dict)
删除元素 pop和del
语法:字典.pop(Key),结果:获得指定Key的Value,同时字典被修改,指定Key的数据被删除
del 字典[key] 为直接删除
- my_dict={"A":100,"B":80,"C":60}
-
- value=my_dict.pop("A")
- print(value)
- print(my_dict)
-
- del my_dict["B"]
- print(my_dict)
100
{'B': 80, 'C': 60}
{'C': 60}
清空字典 clear
语法:字典.clear(),结果:字典被修改,元素被清空
- my_dict={"A":100,"B":80,"C":60}
-
- my_dict.clear()
- print(my_dict)
{}
获取全部的键 keys
语法:字典.keys(),结果:得到字典中的全部Key
- my_dict={"A":100,"B":80,"C":60}
-
- k=my_dict.keys()
- print(k)
- print(my_dict)
dict_keys(['A', 'B', 'C'])
{'A': 100, 'B': 80, 'C': 60}
遍历字典
keys()
语法:for key in 字典.keys()
字典不支持下标索引,所以同样不可以用while循环遍历
- my_dict={"A":100,"B":80,"C":60}
-
- for key in my_dict.keys():
- print(f"等级:{key},分数:{my_dict[key]}")
等级:A,分数:100
等级:B,分数:80
等级:C,分数:60
values ()
- my_dict={"A":100,"B":80,"C":60}
-
- for i in my_dict.values():
- print(i)
100
80
60
items()
- my_dict={"A":100,"B":80,"C":60}
-
- for i in my_dict.items():
- print(i)
-
- print(type(i))
- print(type(my_dict.items()))
('A', 100)
('B', 80)
('C', 60)
<class 'tuple'>
<class 'dict_items'>
利用items依次打印key和value
- my_dict={"A":100,"B":80,"C":60}
-
- #4.依次打印key和value,通过索引
- for key,value in my_dict.items():
- print(key,value)
A 100
B 80
C 60
容器通用功能总览
功能 | 描述 |
通用for循环 | 遍历容器(字典是遍历key) |
max | 容器内最大元素 |
min() | 容器内最小元素 |
len() | 容器元素个数 |
list() | 转换为列表 |
tuple() | 转换为元组 |
str() | 转换为字符串 |
set() | 转换为集合 |
sorted(序列, [reverse=True]) | 排序,reverse=True表示降序
得到一个排好序的列表 |
到此这篇关于Python数据容器dict(字典)的实现的文章就介绍到这了,更多相关Python数据容器字典内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!