字典

知识点

定义

1
2
3
4
5
6
7
# 字典用{}定义
# 一个字典通常存储描述一个物体的相关信息
diractory = {
"key1":"值",
"key2":['值'],
# ...
}
1
2
3
4
5
6
# 字典使用键值对存储数据,键值对之间用,分割
# 键(key)是索引
# 值(value)是数据
# 键和值之间用:隔开
# 键必须是唯一的
# 值可以取任何数据类型,但键只能是字符串、数字、元组

取值

1
diractory["key值"]

增加、修改

1
2
3
4
# 追加值
diractory["新值的key"] = 值
# 修改值
diractory["修改的key"] = 值

删除

1
2
# pop:删除指定key值的数据
diractory.pop("要删除的key")

统计

1
len(diractory)

合并字典

1
2
# update:将其它字典追加到当前字典中,若当前字典中的键值对已存在,则会用新的键值信息更新原字典中的信息
diractory.update(new_diractory)

循环

1
2
3
# items表示取字典的键、值,keys表示取键,values表示取值
for key,value in diractory.items():
print("{0} - {1}".format(key, value))

Tip

1
2
3
# 实际开发中的场景为:
# 1. 使用键值对,存储描述一个物体的相关信息 -- 描述更复杂的数据信息
# 2. 将多个字典放在一个列表中,再进行遍历,在循环内部针对每一个字典进行相同的处理

作业

  1. 请定义一个字典personal,其内容是个人信息,主要如下:

    Name genter age weight
    zhangsan man 20 180
  2. 请打印出用户”zhangsan”的个人信息,打印出的文本信息为:

    我叫{Name},是{Genter},今年{Age},体重{weight}

  3. (问答)在字典中,是否可以存在键一样的数据。

  4. 修改用户”zhangsan”的”Name”为”lvluo”

  5. 补充用户”zhangsan”的信息”height”为1.75

  6. 删除用户”zhangsan”的信息”weight”

  7. 统计字典”personal”中目前共有多少键值对信息

  8. 再定义一个字典country,其中信息如下,然后在personal的基础上进行合并

    Country Area
    China anhui
  9. (问答)如果融合的两个字典中存在键相同的数据,则合并后会发生什么

  10. 通过遍历,打印出字典中的键值对信息,其格式为:键 - 值

  11. (问答)字典的常用场景是什么样的