📝前言:
今天我们来学习一下python中的常见数据容器之一——字典:
1,字典的特点及定义
2,字典的引用操作
3,字典的常见操作方法
🎬个人简介:努力学习ing
📋个人专栏:C语言入门基础以及python入门基础
🎀CSDN主页 愚润求学
🌄每日鸡汤:杀不死我的,都将使我更加强大
文章目录
- 一,字典的特点及其定义
- 1,字典的特点:
- 2,字典的定义
- 二,字典的引用
- 三,字典的常用操作
- 1,修改字典中key所对应的值
- 2,删除和清空元素(pop、clear)
- 3,获得全部的键(keys())
- 4,获取所有键值对(items())
- 四,总结
一,字典的特点及其定义
1,字典的特点:
1,可以容纳多个数据,并且数据的类型可以不同
2,每一份数据都是以key-value
键值对的形式存在(这就是键值对映射)
3,可以通过key
获得value
4,不是序列,不支持下标索引
5,可以修改
2,字典的定义
字典的定义使用花括号 {}
,其中的键和值用冒号 :
分隔。
和值可以是任何类型的对象,例如整数、浮点数、字符串、列表、元组或另一个字典。
但是,字典的键必须是不可变的,类似列表或者字典这种可变的就不能做字典的键
示例:
# 定义一个包含三组键值对的字典
my_dict = {"name": "Alice", "age": 25, "city": "New York"}# 定义空字典
my_dict = {} # 方式一
my_dict = set() # 方式二# 定义嵌套字典 (即键的值对应的又是字典)
nested_dict = {"colors": {"red": "#FF0000","green": "#00FF00","blue": "#0000FF"},"shapes": {"circle": "⚪","square": "⚫","triangle": "⚓"}
}
# 在这个示例中,nested_dict 是一个包含两个子字典的嵌套字典。
# 子字典 "colors" 的键是颜色,子字典 "shapes" 的键是形状。每个子字典中都包含一些值。
二,字典的引用
字典不可以通过下标索引来获取值,但是可以通过key
来获取
语法:
字典[键]
示例(使用上面创造的嵌套字典):
nested_dict = {"colors": {"red": "#FF0000","green": "#00FF00","blue": "#0000FF"},"shapes": {"circle": "⚪","square": "⚫","triangle": "⚓"}
}# 取colors这个键对应的值:
print(nested_dict["colors"])# 要取内层字典colors里面的red对应的值:
print(nested_dict["colors"]["red"]) # 这种写法类似取嵌套的列表里面的值
输出结果:
(可见:colors
是嵌套的内层字典)
三,字典的常用操作
1,修改字典中key所对应的值
语法:
字典[key] = value # 这个就类似我们修改列表对应下标的元素
需要注意的是:当key
不存在的时候,字典会自动添加一个新的键值对
(而在列表里面,当访问不存在的下标时,即越界,则会报错)
示例:
# 创建成员字典,假设每个键值对是成员和他们对应的年龄
member_dict = {"小红":21, "小黄":17, "小绿":35}# 修改小红的年龄
member_dict["小红"] = 24# 添加一个小黑,对应41岁
member_dict["小黑"] = 41# 打印修改和添加完以后的字典
print(member_dict)
输出结果:
可见:小红被修改了;小黑被添加了
2,删除和清空元素(pop、clear)
(1)删除元素(直接修改原字典)
pop()
方法是字典的一个内置方法,用于删除字典中指定的键所对应的值,并且返回那个值。
但是👇🏻
1,如果不指定键,则会删除字典中的最后一个键值对,并返回该值。
2,如果没有找到指定的键,则抛出KeyError
异常。
下面是使用pop
的示例:
# 假设有一个字典叫做 dict
dict = {'a': 1, 'b': 2, 'c': 3}# 删除键 'a' 对应的值,并返回这个值
value = dict.pop('a')
# 此时 dict 变成了 {'b': 2, 'c': 3}# 如果不指定键,则删除并返回最后一个键值对
value = dict.pop()
# 此时 dict 变成了 {'b': 2}# 如果删除的键不存在,则会抛出 KeyError,如:
# value = dict.pop('d') # 这会抛出 KeyError,因为 'd' 键不存在
对于键不存在的时候,还有第二种情况:
pop()
方法还可以接收一个默认值作为参数,如果指定的键不存在,则返回这个默认值,而不是抛出异常:
dict = {'a': 1, 'b': 2, 'c': 3}
# 删除键 'd',如果没有找到则返回默认值 0
default_value = dict.pop('d', 0)
# 此时 dict 保持不变,因为没有找到键 'd',default_value会接收到被设置的默认返回值0
(2)清空元素
clear()
方法同样可以用来清空字典
示例:
member_dict = {"小红":21, "小黄":17, "小绿":35}
# 清空字典
member_dict.clear()
print(member_dict) # 输出 {}
3,获得全部的键(keys())
字典中的keys()
方法可以用来获取这个字典里面全部的键,返回的是一个dict_keys
对象
语法:
字典.keys() # 注意括号不能漏
示例:
member_dict = {"小红":21, "小黄":17, "小绿":35}
all_keys = member_dict.keys()
print(all_keys) # 输出 dict_keys(['小红', '小黄', '小绿'])# 将keys()结合for循环来使用,可以实现遍历字典的每一个键
for key in member_dict.keys():print(key) # 输出 小红 小黄 小绿 # 也可以直接使用for来遍历字典中的每一个键
for key in member_dict:print(key, end=" ") # 输出 小红 小黄 小绿
4,获取所有键值对(items())
items()
方法是字典对象的一个内置方法,用于返回一个包含所有字典键值对的可迭代对象dict_items
(它和dict_keys
都不是普通的列表)。
每个元素是一个键值对组成的元组(key, value)。
下面是 items()
方法的一些基本用法:
# 使用 items() 方法获取字典中所有键值对的列表
dict = {'a': 1, 'b': 2, 'c': 3}
items = dict.items()
print(items) # 输出dict_items([('a', 1), ('b', 2), ('c', 3)])# 我们同样可以使用for循环去遍历它:
for i in items:print(i, end=" ")# 输出 ('a', 1) ('b', 2) ('c', 3)
四,总结
🌈我的分享也就到此结束啦🌈
要是我的分享也能对你的学习起到帮助,那简直是太酷啦!
若有不足,还请大家多多指正,我们一起学习交流!
📢公主,王子:点赞👍→收藏⭐→关注🔍
感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!