字典

字典 -- 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. Jenkins+robotframework持续集成环境(三)

    构建job并运行 一.配置job 1.在Jenkins首页的左侧菜单栏,点击新建任务,输入一个任务名称,并选择“构建一个自由风格的软件项目”,点击确定进入配置Job页面. 2.在构建处选择Window ...

  2. 通俗易懂的RESTful API实践详解(含代码)

    来源:点击进入 点击上方链接,版面更好 一.什么是RESTful REST 是面向资源的,这个概念非常重要,而资源是通过 URI 进行暴露,URI 的设计只要负责把资源通过合理方式暴露出来就可以了,对 ...

  3. B. Modulo Equality

    当时想到的第一个想法是用拓展欧几里得解方程,求x的最小正解.一发交了之后发现爆long long,因为m是1e9. 因此本题的正解是暴力,保证有解的情况下,那么a数组中的一个数必然对应着b数组中的一个 ...

  4. ACM常用STL容器

    // STL(标准模板库),由三大部分组成:容器,算法,迭代器 // STL六大组件:container(容器),algorthm(算法),iterator(迭代器) // function obje ...

  5. thinkphp5.0 insert添加数据

    首先引入文件:use think\Db; public function zhuce(){ $username = input("username");//手机号 $passwor ...

  6. GSS 系列题解

    GSS GSS1 随便猫树或者线段树,就可以过了 猫树不说,线段树可以维护左边最大,右边最大,区间最大,区间值然后就做出来了. //Isaunoya #pragma GCC optimize(2) # ...

  7. processing data

    获取有效数据 Scikit-learn will not accept categorical features by default API里面不知使用默认的特征变量名,因此需要编码 这里我还是有疑 ...

  8. (CPSCA's)CPOJC+VIJOS

    Coding Plus System Core Association 建立的Coding Plus Online Judge China 在Vijos上初步落脚,让我们拭目以待,等待暑假期间ACM1 ...

  9. BZOJ4566&&lg3181 HAOI找相同字符(广义后缀自动机)

    BZOJ4566&&lg3181 HAOI找相同字符(广义后缀自动机) 题面 自己找去 HINT 给定两个文本串,问从两个串中各取一个非空子串,使这俩子串相同,问方案有多少种.我的思路 ...

  10. Linux C语言 文件操作

    打开函数 fopen 的原型如下. FILE * fopen(char *filename, char *mode); 返回值:打开成功,返回该文件对应的 FILE 类型的指针:打开失败,返回 NUL ...