美文网首页
【Python_58-66】字典【b站搬运_子木】

【Python_58-66】字典【b站搬运_子木】

作者: 太甜了不要加糖 | 来源:发表于2022-01-29 11:22 被阅读0次

    字典是什么?

    内置的数据结构之一,与列表一样,是可变序列

    格式:“键: 值”,键值对。相当于列表当中的一个元素

    键值对 的方式存储数据,列表:有序(第一个放进去的元素在第一个位置上) vs 字典:无序

    放入字典中的 键 ,必须是一个不可变序列

    ***不可变序列,就是str字符串等,目前学到2个可变序列就是:列表、字典。


    哈希函数

    往字典中 存储数据时,要经过一个叫 哈希函数 的工序——要把  放入到 哈希函数 中 进行一个计算(计算的是存储位置)——所以要求 键 必须是不可变序列(str、int、bool......)。

    hash函数计算出 键入内容 所在位置

    新建 字典——{}并赋值、dict(name=‘lax,age=21’)

    直接用花括号时,用 冒号: 连接    or    用dict()函数时,用 等号= 赋值 

    查找 字典 元素——对象.get()

    最好用get(),直接用[]指定内容,会对不存在的元素查找 报错

    判断key——print(?in/not in 对象) ;清空所有——对象.clear(),删除——del 对象

    新增、修改——用方括号指定对象并赋值

    新增、修改——用方括号指定对象并赋值

    获取字典视图(keys、values、键值对)的方法——对象.keys/values/items()并赋值给一个新对象

    及 将获取的视图 转换成列表print(list(新对象))

    获取的视图 类型是字典_键/值/键值对

    字典的遍历

    for in循环用来遍历

    字典的特点

    key不可以重复(重复 就被后一个value覆盖前一个value),value可以重复

    key不可以重复(重复 就被后一个value覆盖前一个value)

    Mike重复,所以23把2覆盖了

    字典会浪费较大内存

    key之间的空位就是浪费的空间,因为key所在的位置是由 hash函数 指定的,难以避免会存在“空位”

    字典生成式——for in+zip()的使用

    用zip()

    格式是:{item:price   for item,price in zip(items,prices)}

    将item:price 换成 item.upper():price ——> 字符串的小写变大写

    相关文章

      网友评论

          本文标题:【Python_58-66】字典【b站搬运_子木】

          本文链接:https://www.haomeiwen.com/subject/qlpehrtx.html