1、字典定义
字典(Dictionary)是Python中的一种数据类型,用于存储键值对(key-value pairs)。它是可变的、无序的,且每个键必须是唯一的。
字典使用花括号 {} 来表示,键和值之间使用冒号 : 分隔,键值对之间使用逗号分隔。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict1 = {} # 空字典
当存在两个相同的键值对时,则只保留后面的value值。
dict = {"姓名":"小彤","性别":"女","年龄":18,"年龄":22}
print(dict) # 输出结果:{'姓名': '小彤', '性别': '女', '年龄': 22}
2.字典取值
字典中key具有唯一性,并且是不可变的数据类型。value则可以是任何数据类型。
根据key的唯一性,可以进行字典的取值。
key方法:dict["key"]
dict = {"姓名":"小彤","性别":"女","年龄":18}
print(dict["姓名"]) # 输出结果:小彤
get方法:dict.get("key","提示内容”)
当使用get方法取值时,若所取的键值对不存在则会返回想要提示的内容。若提示内容未写则默认为“None”。
dict = {"姓名":"小彤","性别":"女","年龄":18}
print(dict.get("姓名","不存在该项目")) # 输出结果:小彤
print(dict.get("身高","不存在该项目")) # 输出结果:不存在该项目
setdefault方法:dict.setdefault(key,value)
当使用setdefault方法取值时,若所取的键值对不存在则将键值对创建并添加在字典内。若value值未写则默认value值为“None”。
dict = {"姓名":"小彤","性别":"女","年龄":18}
print(dict.setdefault("姓名","不存在该项目")) # 输出结果:小彤
print(dict.setdefault("身高")) # 输出结果:None
print(dict.setdefault("体重",100)) # 输出结果:100
print(dict) # 输出结果:{'姓名': '小彤', '性别': '女', '年龄': 18, '身高': None, '体重': 100}
3、字典的value值更新
“=”法:dict["key"] = "value"
直接让字典中的key等于其要更改的value值。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict["姓名"] = "小雨"
print(dict) # 输出结果:{'姓名': '小雨', '性别': '女', '年龄': 18}
update法:update(key:value)
若想要修改的键值对存在则改变其value值,若键值对不存在则创建该键值对添加在字典内。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict.update({"姓名":"小雨"})
dict.update({"年龄":"20","身高":100})
print(dict) # 输出结果:{'姓名': '小雨', '性别': '女', '年龄': '20', '身高': 100}
4、字典的删除
pop法:dict.pop(key)
字典内不存在下标,删除时需要根据其键名来进行删除。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict.pop("姓名")
print(dict) # 输出结果:{'性别': '女', '年龄': 18}
popitem法:dioct.popitem()
默认从字典的末尾进行删除一个键值对。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict.popitem()
print(dict) # 输出结果:{'姓名': '小彤', '性别': '女'}
clear法:dict.clear()
清除字典中所有的键值对,返回一个空字典。
dict = {"姓名":"小彤","性别":"女","年龄":18}
dict.clear()
print(dict) # 输出结果:{}
5、获取字典键(key)、值(value)、键值对(key-value)
keys:获取字典所有的键
values:获取字典所有的值
items:获取字典所有的键值对
dict = {"姓名":"小彤","性别":"女","年龄":18}
print(dict.keys()) # 输出结果:dict_keys(['姓名', '性别', '年龄'])
print(dict.values()) # 输出结果:dict_values(['小彤', '女', 18])
print(dict.items()) # 输出结果:dict_items([('姓名', '小彤'), ('性别', '女'), ('年龄', 18)])
输出后会有一个提示,同时键、值、键值对输出方式均为元组。可以通过内置函数来改变其输出方式。
dict = {"姓名":"小彤","性别":"女","年龄":18}
print(list(dict.keys())) # 输出结果:['姓名', '性别', '年龄']
print(list(dict.values())) # 输出结果:['小彤', '女', 18]
print(list(dict.items())) # 输出结果:[('姓名', '小彤'), ('性别', '女'), ('年龄', 18)]