一:学习内容

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

二:字典概念

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. zookeeperAPI的常用方法

    zookeeper支持三种部署方式: 1 单机 2 集群 3 伪集群 删除节点 zkClient.delete(path);

  2. 使用.NET Core创建Windows服务(一) - 使用官方推荐方式

    原文:使用.NET Core创建Windows服务(一) - 使用官方推荐方式 原文:Creating Windows Services In .NET Core – Part 1 – The &qu ...

  3. @babel/traverse 使用方法小记

    @babel/traverse 官网: https://babeljs.io/docs/en/babel-traverse github:https://github.com/babel/babel/ ...

  4. 富文本编辑器--使用textarea即时更新文本域同步编辑器内容

    使用 textarea wangEditor 从v3版本开始不支持 textarea ,但是可以通过onchange来实现 textarea 中提交富文本内容. <div id="di ...

  5. 会计凭证替代 OBBH

    单词:Validation: 会计凭证校验 ,Substitution:会计凭证替代 step1: GCX2 gblr: ZRFI_GGBR000 gbls: ZRFI_GGBS000 - step2 ...

  6. 数据库学习笔记3 基本的查询流 2 select lastname+','+firstname as fullname order by lastname+','+firstname len() left() stuff() percent , select top(3) with ties

    数据库学习笔记3 基本的查询流 2   order by子句对查询结果集进行排序 多列和拼接 多列的方式就很简单了 select firstname,lastname from person.pers ...

  7. MySQL5.5配置文件my.ini详解

    [client]port = 3306 [mysqld]port = 3306 ##安装目录 basedir="C:/Program Files (x86)/MySQL/MySQL Serv ...

  8. KVM和Docker的对比

    虚拟化技术对比: KVM:全虚拟化,需要模拟各种硬件 docker:严格来说不算是虚拟化技术,只是进程隔离和资源限制 实例启动进程对比: 在kvm虚拟机中执行top命令,看宿主机进程树,根本看不到to ...

  9. Java 和JavaScript实现C#中的String.format效果

    1.Java实现      /**      * 需要引入com.alibaba.fastjson.1.2.8     * String result2=HuaatUtil.format(templa ...

  10. docker compose无法解析正确的版本

    docker compose无法解析正确的版本.如果你使用了一个左双引号,而不是正常的双引号,docker compose将解析版本为“2”,而不是2.应该改为: version: "2&q ...