字典

字典 -- dict

  • Python的数据结构之一
  • 字典是可变数据类型,无序的

定义

  • dic = {'key':'Value'}

    • 键值对

字典的作用

  • 存储数据,大大量的,将数据和数据起到关联作用
  • dic={'10':'苹果',11:'小米',Ture:'华为',(1,):'oppo'}
    • 所用的操作都是通过键
  • 键:必须是不可变的数据类型(可哈希),且唯一
    • 已知的不可变(可哈希)的数据类型: int, str, tuple, bool
    • 可变(不可哈希)的数据类型: list, dict, set
  • 值:任意
  • dic.get()

字典的增

暴力添加
  • dic['键']='值'

    • 字典的添加,添加的是一个键值对,有则覆盖,无则添加
    • dic['键']=['值1','值2','值3','值4']
有则不修改,无则添加
  • dic.setdefault('键':['值1','值2','值3'])

    • 先查看键是否在字典
    • 如果不存在则添加

字典的删除

  • dic.pop(键)

    • 删除字典中的键进行删除,返回的也是被删除的键
  • dic.clear()
    • 清空
  • del dic
    • 删除整个字典
  • del dic[键]
    • 通过键删除
  • 字典中没有remove ()

字典的改

  • dic[键]=值

    • 有则覆盖,无则添加
  • dic.update({键:值,键:值})
    • dic.update(字典)

字典的查

  • dic.get(键)

  • dic.setdefault(键)

    • 没有值时是查询
    • 查询不到返回None
  • dic[键]

    • 查询不到报错
  • for i in dic:
    print(i)
  • for i in dic:
    print(dic.get(键))
    • 查询不到返回None
  • for i in dic:
    print(dic.get(键,键))
    • dic.get(键 , 制定的查询不到就返回的值)
  • 查找不到返回自己制定的内容

  • dic.kyes() #所有的键

    • 获取到的是一个高仿的列表
  • dic.values() # 所有的值

    • 获取到的是一个高仿的列表

      • 高仿列表支持迭代不支持索引
  • dic.items()

    • 键值呈现元组
解构
  • a=10
    b=20
    a,b=b,a
  • a,b=10,20
    print(a)
    print(b)
  • a,b=(10,20)
    print(a)
    print(b)
  • a,b=[10,20]
    print(a)
    print(b)
  • a,b='wc'
    print(a)
    print(b)
  • dic={'key1':2,'key2':4}
    a,b=dic
    print(a)
    print(b)
    输出:key1
    key2
  • for a,b in 字典名.items():
    a:键
    b:值
解构作用
  • lst=[1,2,3,4,5,6,7,8]
    a,b,c,d,e,*f=lst #一一对应赋值,必须多一个(*变量名)用来存储剩下的数据
    print(a)
    print(b)
    print(e)

字典的嵌套

  • dic={
    101:{1:{'日莫':{'对象'}},
    2:{'老王':{'王炸'}},
    3:{'乔碧螺':['日莫','炮手','宝元']},
    },
    102:{1:{'汪峰':{'国际章':{'小苹果','大鸭梨'}}},
    2:{'邓紫棋':['泡沫','信仰','天堂','光年之外']},
    3:{'腾格尔':{'隐形的翅膀','卡路里','日不落'}}
    }
    }
    • 按照键一层层进行查

Python之路Day05的更多相关文章

  1. 初学python之路-day05

    每天一总结,今天学习的是数据类型及其使用方法与可变与不可变类型. 今天了解的数据类型有整型int,浮点型float,字符串类型str,布尔型bool,列表list. 整型int与浮点型float都属于 ...

  2. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  3. Python之路

    Python学习之路 第一天   Python之路,Day1 - Python基础1介绍.基本语法.流程控制              第一天作业第二天   Python之路,Day2 - Pytho ...

  4. python之路 目录

    目录 python python_基础总结1 python由来 字符编码 注释 pyc文件 python变量 导入模块 获取用户输入 流程控制if while python 基础2 编码转换 pych ...

  5. Python之路【第十九篇】:爬虫

    Python之路[第十九篇]:爬虫   网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...

  6. Python之路【第十八篇】:Web框架们

    Python之路[第十八篇]:Web框架们   Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...

  7. Python之路【第十七篇】:Django【进阶篇 】

    Python之路[第十七篇]:Django[进阶篇 ]   Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...

  8. Python之路【第十六篇】:Django【基础篇】

    Python之路[第十六篇]:Django[基础篇]   Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...

  9. Python之路【第十五篇】:Web框架

    Python之路[第十五篇]:Web框架   Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 ...

随机推荐

  1. CSS字体连写及外观属性

    一.font:字体连写 使用font属性时,必须按以下语法格式中的顺序书写,不能更换顺序,各个属性以空格隔开.注意:其中不需要设置的属性可以省略(取默认值),但必须保留font-size和font-f ...

  2. CSS背景说明及连写

    一.CSS背景说明 CSS 可以添加背景颜色和背景图片,以及来进行图片设置. 1.1 背景图片(image) background-image 属性允许指定一个图片展示在背景中(只有CSS3才可以多背 ...

  3. 标准化建筑的 FRESH 原则

    前记 大家好,我是小镭. 我在钢结构领域从业十余年,虽然工作内容是关于建筑的,但如果问我什么是建筑,我却一时答不出来. 记得小时候我读过一篇文章,说建筑是凝固的音乐. 后来我看了些书,觉得建筑是空间. ...

  4. PTA 邻接表存储图的广度优先遍历

    试实现邻接表存储图的广度优先遍历. 函数接口定义: void BFS ( LGraph Graph, Vertex S, void (*Visit)(Vertex) ) 其中LGraph是邻接表存储的 ...

  5. 限定输入框只能输入数字, TextBox的TextChanged事件调用

    /// <summary> /// 限定输入框只能输入数字, TextBox的TextChanged事件调用 /// </summary> /// <param name ...

  6. 聊聊智能指针 auto_ptr、shared_ptr、weak_ptr和unique_ptr

    本文为转载:https://www.cnblogs.com/zeppelin5/p/10083597.html,对作者有些地方做了修正. 手写代码是理解C++的最好办法,以几个例子说明C++四个智能指 ...

  7. 案例-pyqt进度条案例

    import sys from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * import ...

  8. windows 2012 r2怎么进入本地组策略

    可以使用命令行或使用 Microsoft 管理控制台 (MMC) 打开本地组策略编辑器.通过命令行打开本地组策略编辑器的步骤单击“开始”,在“开始搜索”框中键入 gpedit.msc,然后按 Ente ...

  9. Java文件与流测试

    import java.io.File; import java.io.InputStreamReader; import java.math.BigDecimal; import java.io.B ...

  10. Linux之docker搭建

    1.docker运行环境 CentOS7(64-bit),要求系统为64位,系统内核版本为3.10以上 查看系统版本:cat /etc/centos-release 查看系统内核版本:uname -a ...