一、字典

  定义:一组无序的键值对的组合

二、通过dict()声明一个字典

  1、. dict() 创建一个空字典
  2、. dict() 接收一个字典作为参数 ---> 创建一个字典
  3、. dict() 接收列表套元组的数据结构 ---> 创建一个字典
  4、. dict() 接收关键字参数 --> 创建一个字典

三、特点

  1、字典是无序的
  2、字典的key(键)必须是不可变的数据类型
  3、字典的value(值)可以是任意的数据类型
  4、字典是可变的数据类型

四、方法

  1、增

    (1)通过添加键值对的方式
      字典名[key] = value
    (2)setdefault(k, default)
      k : 键
      default : 默认值
      键不存在时, 将键值对添加到字典中
      键存在时, 不做任何操作

  2、删

    (1).pop(key) 根据key值删除字典中的指定键值对
    (2).popitem() 随机删除字典中的某个键值对, 数据量较小的时候, 给我们的感觉是删除最后的
    (3).clear() 清空字典, ---> 变成一个空字典

    (4)del 字典 删除字典
      del 字典[key] 删除字典中的指定键值对

  3、改

    (1)通过键值对的方式
      字典名[key] = value
       key存在时, 修改;
       key不存在时, 添加;
    (2)update()
      update(key=value)
      key存在时, 修改覆盖
      key不存在时, 添加

  4、查

    (1)通过key获取value       

      字典名[key] 如果key不存在, KeyError       

      字典名.get(key) 如果key不存在, 返回一个None

    (2) .keys() 一次性获取所有的key
    (3).values() 一次性获取所有的value
    (4).items() 一次性获取所有的键值对

五、key & value

 1 if "name" in {"name": "小星星"}:  # 判断是否在字典的key中
 2     print("key在字典里")  # key在字典里
 3 
 4 if "小星星" in {"name": "小星星"}:
 5     print('小星星在字典里') # 不输出
 6 
 7 if "小星星" in {"name": "小星星"}.values():
 8     print('value在字典里')  # value在字典里
 9 
10 if "age" not in {"name": "小星星"}:
11     print('年龄不在字典的key里')  # 年龄不在字典的key里