一:学习内容

  • 字典概念
  • 字典创建
  • 字典访问
  • 字典添加
  • 字典删除
  • 字典遍历
  • 字典与列表比较

二:字典概念

1.使用键值对(key-value)存储,具有极快的查找速度

2.注意:字典是无序的

3.特性:

  • 字典中的key必须唯一
  • key必须是不可变的对象
  • 字符串、整数、元组等都是不可变的,可以作为key
  • list是可变的,不能作为key

三:字典创建

1.创建空字典

dict0={}

2.创建有元素的字典

dict1 = {"tom":60, "tester":88,"lili":100}

四:字典访问

1.获取:字典名[key]  没有这个key就会报错

dict1 = {"tom":60, "tester":88,"lili":100}

print(dict1["tom"])

dict1 = {"tom":60, "tester":88,"lili":100}

print(dict1["jojo"])  #没有这个key会报错

2.获取:dict1.get(key)  没有这个key返回None

dict1 = {"tom":60, "tester":88,"lili":100}

print(dict1.get("jojo")) #没有这个key不会报错,返回None

五:字典添加

1.字典名[key] = value,如果key存在字典中就为修改

dict1 = {"tom":60, "tester":88,"lili":100}

dict1["huawei"] = 99

print(dict1)

#因为一个key对应一个value,所以多次对一个key赋值其实就是修改这个key的值

dict1 = {"tom":60, "tester":88,"lili":100}

dict1["tom"] = 70

print(dict1)

六:字典删除

1.字典名.pop(key)

dict1 = {"tom":60, "tester":88,"lili":100}

dict1.pop("tom")

print(dict1)

七:字典遍历

1.遍历key

dict1 = {"tom":60, "tester":88,"lili":100}
for key in dict1:
    print(key,dict1[key])

2.遍历value

dict1 = {"tom":60, "tester":88,"lili":100}
for value in dict1.values():
    print(value)

3.遍历key和value

dict1 = {"tom":60, "tester":88,"lili":100}
for key,value in dict1.items():
    print(key,value)

4.枚举遍历key,遍历key和key的序号,这个序号是我们存入字典里key的顺序

dict1 = {"tom":60, "tester":88,"lili":100}
for no,key in enumerate(dict1):
    print(no,key)

八:字典与列表的区别

和list比较:
1、字典查找和插入的速度极快,不会随着key-value的增加变慢;列表查找和插入的速度会随着数据量的增加而变慢
2、字典需要占用大量的内存,内存浪费多,(多存了key的部分);列表占用空间少,浪费内存少

python3笔记十二:python数据类型-Dictionary字典的更多相关文章

  1. python3笔记十:python数据类型-Tuple元组

    一:学习内容 元组概念 元组创建.访问.删除 元组操作 元组方法 二:元组概念 1.本质:是一种有序集合 2.特点:与列表非常相似.一旦初始化就不能修改.使用小括号 三:元组创建 1.创建空元组 tu ...

  2. python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL

    python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...

  3. python3 第十二章 - 数据类型之List(列表)

    Python内置的一种数据类型是列表:list. list是一种有序的集合 可以随时添加和删除其中的元素. 它可以作为一个方括号内的逗号分隔值出现. 列表的数据项不需要具有相同的类型 创建一个列表,只 ...

  4. python3笔记八:python数据类型-Number数字

    一:学习内容 数字类型分类:整数.浮点数.复数.布尔值 数字类型转换 数字类型的数学功能:abs().max().min().pow().round().math函数.random函数 二:数字类型分 ...

  5. python3笔记九:python数据类型-String字符串

    一:学习内容 字符串概念 字符串运算 字符串函数:eval().len().lower().upper().swapcase().capitalize().title().center().ljust ...

  6. python3笔记十一:python数据类型-List列表

    一:学习内容 列表概念 列表创建:创建空列表.创建带有元素的列表 列表访问:取值 列表修改:替换元素.追加元素.追加列表.插入元素 列表删除:移除列表中指定下标处的元素.移除匹配条件的第一个元素.移除 ...

  7. python3笔记十三:python数据类型-Set集合

    一:学习内容 集合概念 集合创建 集合添加 集合插入 集合删除 集合访问 集合操作:并集.交集 二:集合概念 1.set:类似dict,是一组key的集合,不存储value 2.本质:无序和无重复元素 ...

  8. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  9. python数据类型:字典Dictionary

    python数据类型:字典Dictionary 字典是一种可变容器模型,可以存储任意类型对象 键是唯一的,但是值不需要唯一 值可以取任何数据类型,但是键必须是不可变的,如字符串,数字,元组 创建字典: ...

随机推荐

  1. namenode datanode理解

        HDFS是以NameNode和DataNode管理者和工作者模式运行的.          NameNode管理着整个HDFS文件系统的元数据.从架构设计上看,元数据大致分成两个层次:Name ...

  2. Linux上安装postgres 10.5

    由于接触了华为的elk大数据平台,里面封装的是postgres ,就想着安装一下,熟悉一下postgres数据. 安装包下载:https://www.postgresql.org/ftp/source ...

  3. 配置Linux静态IP地址

  4. 韦东山嵌入式Linux学习笔记08--中断体系结构

    中断是什么? 举个栗子, 系统怎么知道你什么时候插入鼠标这个设备? 可以有两种处理方式: 1. 查询方式: 轮询去检测是否有设备插入; 2. 中断的方式 当鼠标插入这个事件发生时, 置位某个寄存器,告 ...

  5. zabbix分布式部署和主机自动发现

    1.分布式部署原理 1.1Zabbix分布式部署的原理 传统的部署架构,是server直接监控所有的主机,全部主机的数据都是有server自己来采集和处理,server端的压力比较大,当监控主机数量很 ...

  6. win10 安装ubuntu16.04双系统

    安装了两天的ubuntu系统,很是头疼,发现网上的内容,比较繁杂,因此,写此博客,进行综合整理,总结了安装方法.方便大家安装,减少搜索. 电脑是老师的电脑,配置为: 主板:微星 CPU:英特尔i5 7 ...

  7. AWR报告提取方法

    AWR报告提取方法 关键字 AWR报告 内容描述 AWR报告的提取方法 涉及设备 oracle 10g 操作说明 [问题现象描述] 现场提取AWR报告 [分析结论及解决方案] Awr报告生成方法 进入 ...

  8. noi.ac NA534 【猫】

    一眼暴力DP 再一眼决策单调性? 打个表以为是四边形不等式?? 最后发现是斜率优化??? 于是成功写了个假斜率优化真四边形不等式拿了\(80\) 设\(f[i][j]\)表示有\(i\)个工作人员出发 ...

  9. Acwing-281-硬币(背包)

    链接: https://www.acwing.com/problem/content/283/ 题意: 给定N种硬币,其中第 i 种硬币的面值为Ai,共有Ci个. 从中选出若干个硬币,把面值相加,若结 ...

  10. Spring整合MongoDB(转)

    1.认识Spring Data MongoDB 之前还的确不知道Spring连集成Nosql的东西都实现了,还以为自己又要手动封装一个操作MongoDB的API呢,结果就发现了Spring Data ...