Python基础之字典的详细使用教程

目录

一. 什么是字典

字典作为Python的一个内置数据结构,和列表一样都是可变序列的,但是它是无序的,以键值对的方式存储数据。

二. 创建字典

创建字典的两种方式,一种使用{ } 另一种使用内置函数dict()

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01={\"A\": 1, \"B\": 2, \"C\": 3}
# {\'A\': 1, \'B\': 2, \'C\': 3}
print(dict01)
dict02=dict(a=1, b=2,name=\"zs\")
# {\'a\': 1, \'b\': 2, \'name\': \'zs\'}
print(dict02)

三. 字典元素获取

获取字典元素有两种,通过[]或者get()方法获取,两者的区别就是前者当key不存在会抛出异常,后者不会抛出异常,会返回None

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {\"A\": 1, \"B\": 2, \"C\": 3}
 
# 字典的元素获取
# 1
print(dict01[\"A\"])
# 3
print(dict01.get(\"C\"))
# KeyError: \'D\'
# print(dict01[\"D\"])

四. 字典元素的增删改操作

使用not in与 in判断字典元素中的key是否存在,这一点与列表的用法是相同的。当然也可以对字典中的元素进行增删改的操作。

删除键值对使用del, 增加字典元素与修改字典元素的操作是一样的,就是有key与无key的区别。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {\"A\": 1, \"B\": 2, \"C\": 3}
 
# True
print(\"A\" in dict01)
# False
print(\"A\" not in dict01)
 
# 删除 B
del dict01[\"B\"]
# {\'A\': 1, \'C\': 3}
print(dict01)
# 增加元素 D
dict01[\"D\"]=4
# {\'A\': 1, \'C\': 3, \'D\': 4}
print(dict01)
# 修改D的值
dict01[\"D\"]=40
# {\'A\': 1, \'C\': 3, \'D\': 40}
print(dict01)

五. 字典的视图操作

通过keys(),values(),items()可以分别获取字典中的所有键,所有值,所有键值对。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {\"A\": 1, \"B\": 2, \"C\": 3}
 
# 获取所有的key
keys = dict01.keys()
# 类型为 <class \'dict_keys\'>
print(type(keys))
# dict_keys([\'A\', \'B\', \'C\'])
print(keys)
# 转化为列表 [\'A\', \'B\', \'C\']
print(list(keys))
 
# 获取所有的value
values = dict01.values()
# 类型为 <class \'dict_values\'>
print(type(values))
# dict_values([1, 2, 3])
print(values)
# 转化为列表 [1, 2, 3]
print(list(values))
 
# 获取所有的键值对
items = dict01.items()
# <class \'dict_items\'>
print(type(items))
# dict_items([(\'A\', 1), (\'B\', 2), (\'C\', 3)])
print(items)
# 元组的数据结构 [(\'A\', 1), (\'B\', 2), (\'C\', 3)]
print(list(items))

当然也可以使用以下的方式去遍历字典元素:

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {\"A\": 1, \"B\": 2, \"C\": 3}
 
# A 1 1
# B 2 2
# C 3 3
for item in dict01:
    print(item,dict01[item],dict01.get(item))

字典的总结如下:

字典中的key不允许重复,value可以

其中key为不可变对象

字典中的元素是无序的

字典根据需要动态伸缩,但字典会浪费较多的内存空间

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容