python —— 字典
字典
字典是存储无序的数据集合
字典用 {}定义
字典使用键值对存储使用,键值对之间使用,分隔
键key是索引
值value是数据
键和值之间用:分隔
键是唯一的
值可以是任何数据类型,但是键只能使用字符串、数字或元组
1、字典的定义
# 字典是一个无序的数据集合,使用print函数输出字典值时
# 在python3.7中,字典中元素的排列顺序与定义时相同,。打印或者遍历字典中的元素,会发现元素的排列顺序与添加顺序相同
xiaoming = {"name":"小明",
"age":18,
"height":1.80,
"weight":75}
print(xiaoming)
{'name': '小明', 'age': 18, 'height': 1.8, 'weight': 75}
2、字典的基本操作
xiaoming_dict = {"name":"小明"}
# 1、取值
print(xiaoming_dict["name"])
# 在取值的时候,如果指定的key不存在,程序会报错
# print(xiaoming_dict["name1"])
# 2、增加/修改
# 如果key不存在,会新增键值对
xiaoming_dict["age"] = 19
# 如果key存在,会修改已经存在的键值对
xiaoming_dict["name"] = "小小明"
# 3、删除
# 调用pop()方法删除
xiaoming_dict.pop("name")
# 删除指定键值对的时候,,如果指定的key不存在,程序会报错
xiaoming_dict.pop("name1")
# 也可以使用del语句将相应的键值对彻底删除,使用del语句时,必须指定字典名和要删除的键
del xiaoming_dict['name']
print(xiaoming_dict)
3、字典的其他操作
xiaoming_dict = {"name":"小明",
"age":19}
# 1、统计键值对数量
print(len(xiaoming_dict))
# 2、合并字典
temp_dict = {"height":1.80,
"weight":75,
"age":20}
# 注意:如果被合并的字典中包含已经存在的键值对,会覆盖原有的键值对
xiaoming_dict.update(temp_dict)
# 3、清空字典
xiaoming_dict.clear()
print(xiaoming_dict)
4、遍历字典
xiaoming_dict = {"name":"小明",
"qq":"123456",
"phone":"10086"}
# 迭代遍历字典
# 变量k是每一次循环中获取到的键值对的key
for k in xiaoming_dict:
print("%s - %s" % (k,xiaoming_dict[k]))
输出:
name - 小明
qq - 123456
phone - 10086
尽量使用 for in遍历字典
但是在更多的开发场景中:
使用多个键值对,存储描述一个物体的相关信息 ——— 描述更复杂的数据信息
将多个字典放在一个列表中,再进行遍历,在循环体内部针对每一个字典进行相同的处理
card_list = [
{"name":"一一",
"qq":"2356",
"phone":"23567"},
{"name":"二二",
"qq":"12356",
"phone":"78940"}
]
for card_info in card_list:
print(card_info)