基本数据类型(dict)三

基本数据类型(dict)

⼀. 字典的简单介绍

  字典(dict)是python中唯⼀的⼀个映射类型.他是以{ }括起来的键值对组成. 在dict中key是 唯⼀的. 在保存的时候, 根据key来计算出⼀个内存地址. 然后将key-value保存在这个地址中. 这种算法被称为hash算法, 所以, 切记, 在dict中存储的key-value中的key'必须是可hash的, 如果你搞不懂什么是可哈希, 暂时可以这样记, 可以改变的都是不可哈希的, 那么可哈希就意味着不可变. 这个是为了能准确的计算内存地址⽽规定的.

  已知的可哈希(不可变)的数据类型: int, str, tuple, bool

  不可哈希(可变)的数据类型: list, dict, set

  语法 :

    {key1: value1, key2: value2....}

  注意: key必须是不可变(可哈希)的. value没有要求.可以保存任意类型的数据

  dict保存的数据不是按照我们添加进去的顺序保存的. 是按照hash表的顺序保存的. ⽽hash表 不是连续的. 所以不能进⾏切片⼯作. 它只能通过key来获取dict中的数据

⼆. 字典的增删改查和其他相关操作

   1. 增加

  dic[key] = value

  dic.setdefault(key,value) 如果键在字典中存在不进行任何操作,否则就添加

                                               可以通过key查询,没有这个key返回None

  如果在字典中存在就不进行任何操作,不存在进行添加.

    2. 删除

  pop(key) 有返回值 返回的是被删除value

  del dic[key]
  popitem() 随机删除
  clear() 清空字典

    3. 修改

  dic[key] = value

  dic.update(字典)

    4. 查询

  get(key)

  dic[key]

  for 循环

  setdefault(key)

   print(dic['易大师父'])      查看1 没有这个键的时候查询会报错

   print(dic.get('易大师','你傻啊,没有!'))       查看2 没有返回None 可以指定返回内容

   print(dic.setdefault('易大师范湖'))        查看3 没有返回None

     5. 其他相关操作

  keys 获取到所有的键存在一个高仿的列表中

  values 获取到所有的值存在一个高仿的列表中

  items 获取到所有的键值对已元祖的形式存在一个高仿的列表中

  解构:

  a,b = 1, 2

  a,b = (1,2)

  a,b = [1,2]

 

三. 字典的嵌套

原文地址:https://www.cnblogs.com/chenxi67/p/9401641.html