经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Python » 查看文章
Python数据容器dict(字典)的实现
来源:jb51  时间:2023/2/15 9:19:47  对本文有异议

字典的定义

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

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

每一个键值对包含Key和Value(用冒号分隔)

键值对之间使用逗号分隔

Key和Value可以是任意类型的数据(key不可为字典)

Key不可重复,重复会对原有数据覆盖

字典不可用下标索引,而是通过Key检索Value

字典数据的获取

字典同集合一样,不可以使用下标索引

字典可以通过Key值来取得对应的Value

  1. my_dict={"A":100,"B":80,"C":60}
  2. print(my_dict["A"])
  3. print(my_dict["B"])
  4. print(my_dict["C"])

100

80

60

字典的嵌套

字典的Key和Value可以是任意数据类型(Key不可为字典) 那么,就表明,字典是可以嵌套的

内容获取类似于二维数组

  1. my_dict = {
  2. "sorce":{"A":77,"B":66,"C":33},
  3. "level":{"A":88,"B":86,"C":55},
  4. "grade":{"A":99,"B":96,"C":66}
  5. }
  6. print(my_dict["sorce"])
  7. print(my_dict["sorce"]["A"])
  8. 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值

  1. my_dict={"A":100,"B":80,"C":60}
  2. my_dict["D"]=40#新增加内容
  3. print(my_dict)
  4. my_dict["B"]=88#更新已有内容
  5. print(my_dict)

删除元素 pop和del

语法:字典.pop(Key),结果:获得指定Key的Value,同时字典被修改,指定Key的数据被删除

del 字典[key] 为直接删除 

  1. my_dict={"A":100,"B":80,"C":60}
  2. value=my_dict.pop("A")
  3. print(value)
  4. print(my_dict)
  5. del my_dict["B"]
  6. print(my_dict)

100
{'B': 80, 'C': 60}
{'C': 60}

清空字典 clear

语法:字典.clear(),结果:字典被修改,元素被清空

  1. my_dict={"A":100,"B":80,"C":60}
  2. my_dict.clear()
  3. print(my_dict)

{}

获取全部的键 keys

语法:字典.keys(),结果:得到字典中的全部Key

  1. my_dict={"A":100,"B":80,"C":60}
  2. k=my_dict.keys()
  3. print(k)
  4. print(my_dict)

dict_keys(['A', 'B', 'C'])
{'A': 100, 'B': 80, 'C': 60}

遍历字典     

keys()

语法:for key in 字典.keys()

字典不支持下标索引,所以同样不可以用while循环遍历

  1. my_dict={"A":100,"B":80,"C":60}
  2. for key in my_dict.keys():
  3. print(f"等级:{key},分数:{my_dict[key]}")

等级:A,分数:100
等级:B,分数:80
等级:C,分数:60

values ()

  1. my_dict={"A":100,"B":80,"C":60}
  2. for i in my_dict.values():
  3. print(i)

100

80

60

items()

  1. my_dict={"A":100,"B":80,"C":60}
  2. for i in my_dict.items():
  3. print(i)
  4. print(type(i))
  5. print(type(my_dict.items()))

('A', 100)
('B', 80)
('C', 60)
<class 'tuple'>
<class 'dict_items'>

利用items依次打印key和value

  1. my_dict={"A":100,"B":80,"C":60}
  2. #4.依次打印key和value,通过索引
  3. for key,value in my_dict.items():
  4. 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!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号