Python数据容器dict(字典)的实现

字典的定义

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

Python数据容器dict(字典)的实现_第1张图片

使用{}存储原始,每一个元素是一个键值对

每一个键值对包含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)

利用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数据容器字典内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Python数据容器dict(字典)的实现)