文章目录
【Python学习】字典 学习笔记
一、字典的定义
- dictionary(字典)是除列表以外 Python 之中最灵活的数据类型,它同样可以用来存储多个数据(通常用于存储描述一个物体的相关信息)。
- 字典用
{}
定义,使用键值对
存储数据,键值对之间使用,
分隔 ,键和值之间使用:
分隔 - 键 key是索引,值 value是数据,键必须是唯一的, 值可以取任何数据类型,但键只能使用字符串、数字或元组 。
key | value |
---|---|
name | 小明 |
age | 18 |
gender | True |
- 和列表的区别:列表是有序的对象集合,字典是无序的对象集合。
具体理解:列表在定义的时候,就有具体的索引值从0到n,而字典的索引是指Key,不强调顺序,放在哪都可以,只强调key与value相对应。
注意:由于字典是无序的,所以在print一个字典时,输出的顺序与定义的顺序不一定一样。也与python版本有关系。
二、字典的常用操作
序号 | 分类 | 关键字/函数/方法 | 说明 |
---|---|---|---|
1 | 取值 | 字典[key] | 从字典中取key所对应的值,key不存在时会报错 |
字典.get(key) | 从字典中取key所对应的值,key不存在时会报错 | ||
字典.keys() | 所有key列表 | ||
字典.values() | 所有value列表 | ||
字典.items() | 所有(key,value)元组列表 | ||
2 | 统计 | len(字典) | 获取字典的键值对数量 |
3 | 删除 | del 字典[key] | 删除指定键值对,key不存在时会报错 |
字典.pop(key) | 删除指定键值对,key不存在时会报错 | ||
字典.popitem() | 随机删除一个键值对 | ||
字典.clear | 清空字典 | ||
4 | 修改/增加 | 字典[key] = value | 如果key存在,修改数据 |
如果key不存在,新建键值对 | |||
字典.setdefault(key,value) | 如果key存在,不会修改数据 | ||
如果key不存在,新建键值对 | |||
字典.update(字典2) | 将字典2的数据合并到字典 |
话不多说,上代码举例说明使用方法:
提示:ctrl+q可以查看函数用法
1.从字典中取值
通过字典[key]
取出key所对应的值。
xiaoming_dic = {"name": "小明"}
# 1. 取值
print(xiaoming_dic["name"])
运行结果:
2.字典的增加和修改
如果key存在,会修改数据;如果key不存在,新建键值对
xiaoming_dic = {"name": "小明"}
print(xiaoming_dic)
# 修改
xiaoming_dic["age"] = 18 # 如果key不存在,会新增键值对
print(xiaoming_dic)
运行结果:
xiaoming_dic = {"name": "小明"}
print(xiaoming_dic)
xiaoming_dic["age"] = 18 # 如果key不存在,会新增键值对
xiaoming_dic["name"] = "大明" # 如果key存在,会修改已经存在的键值对
print(xiaoming_dic)
运行结果:
4. 从字典中删除数据
xiaoming_dic = {"name": "小明"}
print(xiaoming_dic)
# 3. 删除
xiaoming_dic.pop("name") # 在删除指定键值对时,如果指定的key不存在,程序会报错。
print(xiaoming_dic)
运行结果:
5.统计元组中包含的元素个数
xiaoming_dic = {"name": "xiaoming",
"age": 18}
print(xiaoming_dic)
# 1. 统计键值对数
print(len(xiaoming_dic))
运行结果:
6.合并字典
xiaoming_dic = {"name": "xiaoming",
"age": 18}
print(xiaoming_dic)
# 2. 合并字典
temp_dic = {"height": 1.75,
"age": 20}
xiaoming_dic.update(temp_dic)
print(xiaoming_dic)
运行结果:
7.清空字典
xiaoming_dic = {"name": "xiaoming",
"age": 18}
print(xiaoming_dic)
# 3. 清空字典
xiaoming_dic.clear()
print(xiaoming_dic)
运行结果:
三、字典的遍历
遍历字典就是依次从字典中获取所有键值对。
xiaoming_dict = {"name": "小明",
"qq": "123456",
"phone": "10086"}
# 变量k是每一次循环中,获取到的键值对的key
for k in xiaoming_dict:
print("%s - %s" % (k, xiaoming_dict[k]))
运行结果:
四、字典的应用场景
- 字典在实际中常使用多个键值对,存储描述一个物体的相关信息 —— 描述更复杂的数据信息。
- 将多个字典放在 一个列表中,再进行遍历,在循环体内部针对每一个字典进行相同的处理。例如:
card_list = [
{"name": "张三",
"qq": "1234",
"phone": "111"},
{"name": "李四",
"qq": "5678",
"phone": "888"},
]
for card_info in card_list:
print(card_info)
运行结果:
记录就到这里啦~~若有错误请多指教