Python3 字典
865字约3分钟
2024-08-10
字典是另一种可变容器模型,且可存储任意类型对象
字典的每个键值 key=>value
对用冒号 :
分割,每个对之间用逗号 ,
分割,整个字典包括在花括号 {}
中
my_dict = { key1 : value1, key2 : value2, key3 : value3 }
创建字典
使用大括号 { }
来创建空字典
my_dict = {}
print(type(my_dict))
# <class 'dict'>
定义重复 key
的字典
my_dict = {"Apple": 4, "Pear": 5, "Apple": 3, "Watermelon": 2}
print(f"重复 key 的字典内容是:{my_dict}")
# 重复 key 的字典内容是:{'Apple': 3, 'Pear': 5, 'Watermelon': 2}
定义嵌套字典
product_dict = {
"fruit": {
"Apple": 4,
"Pear": 5
},
"vegetable": {
"carrot": 6,
"cabbage": 2
}
}
访问字典里的值
通过 key
获取 value
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
price = my_dict["Pear"]
print(f"Pear 的价格为:{price}")
# Pear 的价格为:5
# 定义嵌套字典
product_dict = {
"fruit": {
"Apple": 4,
"Pear": 5
},
"vegetable": {
"carrot": 6,
"cabbage": 2
}
}
# 从嵌套字典中获取数据
price = product_dict["fruit"]["Pear"]
print(f"Pear 的价格是:{price}")
# Pear 的价格是:5
修改字典元素
语法:dict[key] = value
,注意,如果 key
已存在字典中则为更新这个 key
的值
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
my_dict["Mango"] = 8
print(f"字典新增元素后的结果:{my_dict}")
# 字典新增元素后的结果:{'Apple': 4, 'Pear': 5, 'Watermelon': 2, 'Mango': 8}
# 更新元素
my_dict["Pear"] = 10
print(f"字典更新元素后的结果:{my_dict}")
# 字典更新元素后的结果:{'Apple': 4, 'Pear': 10, 'Watermelon': 2, 'Mango': 8}
删除字典元素
通过 del
命令删除单个字典元素
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
del my_dict['Apple']
print(f"字典删除元素的结果:{my_dict}")
# 字典删除元素的结果:{'Pear': 5, 'Watermelon': 2}
通过 del
命令删除整个字典,元素被删除后,输出变量会有异常信息
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
del my_dict # 删除字典
# Traceback (most recent call last):
# File "D:\project\py\base\test.py", line 17, in <module>
# print(my_dict)
# NameError: name 'my_dict' is not defined
pop
删除字典元素后并返回删除元素的值
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
score = my_dict.pop("Pear")
print(f"字典删除元素的值是:{score},字典的结果:{my_dict}")
字典删除元素的值是:5,字典的结果:{'Apple': 4, 'Watermelon': 2}
clear()
方法清空字典的值
my_dict = {"Apple": 4, "Pear": 5, "Watermelon": 2}
my_dict.clear()
print(f"执行清空操作后,字典的结果:{my_dict}")
# 执行清空操作后,字典的结果:{}
字典内置函数&方法
Python
字典包含了以下内置函数
函数 | 描述 |
---|---|
len(dict) | 计算字典元素个数,即键的总数 |
str(dict) | 输出字典,可以打印的字符串表示 |
type(variable) | 返回输入的变量类型,如果变量是字典就返回字典类型 |
Python
字典包含了以下内置方法
方法 | 描述 |
---|---|
dict.clear() | 删除字典内所有元素 |
dict.copy() | 返回一个字典的浅复制 |
dict.get(key, default=None) | 返回指定键的值,如果键不在字典中返回 default 设置的默认值 |
key in dict | 如果键在字典dict里返回 true ,否则返回 false |
dict.items() | 以列表返回一个视图对象 |
dict.keys() | 返回一个视图对象 |
dict.setdefault(key, default=None) | 和 get() 类似, 但如果键不存在于字典中,将会添加键并将值设为 default |
dict.update(dict2) | 把字典 dict2 的键/值对更新到 dict 里 |
dict.values() | 返回一个视图对象 |
pop(key[,default]) | 删除字典 key (键)所对应的值,返回被删除的值 |
popitem() | 返回并删除字典中的最后一对键和值 |