一:学习内容

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

二:字典概念

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. FluentValidation在C# WPF中的应用

    原文:FluentValidation在C# WPF中的应用 一.简介 介绍FluentValidation的文章不少,零度编程的介绍我引用下:FluentValidation 是一个基于 .NET ...

  2. 转载:mysql数据库连接自动断开

    转自:https://www.cnblogs.com/ay-a/p/10520425.html MySql连接空闲8小时自动断开引起的问题   一.问题描述 ​ 最近遇到了一个奇怪的MySql数据库问 ...

  3. PYTHON的程序在LINUX后台运行

    1.nohup 命令 nohup nohup 命令 用途:LINUX命令用法,不挂断地运行命令. 语法:nohup Command [ Arg ... ] [ & ] 描述:nohup 命令运 ...

  4. CentOS7 SVN基本配置

    开机自启指令如下 systemctl enable svnserve.service 对应可执行脚本文件路径 vim /etc/sysconfig/svnserve 查看状态: ps -ef|grep ...

  5. 关于this关键字

    首先看一下这篇博客介绍:http://blog.csdn.net/ccpat/article/details/44515335 下面贴段代码 package com.xujingyang.test; ...

  6. CentOS 安装 oralce Java的图形出错: libXtst.so.6: cannot open shared object file: No such file or directory

    问题类似: shared object file: No such file or directory occurred..java.lang.UnsatisfiedLinkError: /tmp/O ...

  7. [CF 1238F] The Maximum Subtree 树DP

    题意 给定一颗树,求这个树的最大子树,且这个子树是一个good-tree. good-tree的定义是:每个节点可以表示成一个数值区间,而树上的边表示两个点表示的数值区间相交. 题解 通过分析可以发现 ...

  8. mysql安装及加固

    mysql安装 查看是否安装mysql 我们先看一下有没有安装mysql yum list installed mysql | grep mysql 本地只安装了php链接mysql的库,没有安装my ...

  9. java8学习之groupingBy源码分析

    继续接着上一次[http://www.cnblogs.com/webor2006/p/8366083.html]来分析Collectors中的各种收集器的实现, 对里它里面有个groupingby() ...

  10. [易学易懂系列|rustlang语言|零基础|快速入门|(14)|Impls & Traits实现与特征]

    [易学易懂系列|rustlang语言|零基础|快速入门|(14)] 有意思的基础知识 Impls & Traits实现与特征 我之前说到的struct结构体,其实就类似于面向对象语言中的类cl ...