内容大纲:

  一:字典的定义

  二:字典的增加

    >1:按照key增加,  无则增加,有则覆盖

    >2:setdefault()  ,无则增加,有则不变

  三:字典的删除

    >1:pop()   默认删除最后一个,  通过key 删除内容

    >2:popitem()   随机删除一个 

    >3:del 字典名[索引名]

    >4:clear()   清空

  四:字典的改

    >1:字典名[key] ='内容'  有则覆盖,无则增加

    >update()    字典名update(另外一个字典)   有则覆盖,无则增加

        >  update( key= values)

             

  五:字典的查询

    >1字典名['key']   无则报错

    >2 get()   无则返回None

    >3 for 循环

    >4字典名.key()

    >5字典名.values()

    >6字典名.item()

  六,赋值运算

    >1分别赋值运算

  七:字典的嵌套

  

  八:相关函数

    >1 formkeys()

  九:字典的格式化输出

一:字典的定义

  

1,列表如果存储大量的数据,查询速度相对慢一些。
2,列表存储的数据一般没有什么关联性。
[小潘, 175, 男,......]
针对以上因素,python提供了一个基础数据类型:dict字典。
数据类型的分类:
容器型数据类型:list,tuple,dict set。
非容器型数据类型:str bool int。

可变(不可哈希)的数据类型:list,dict,set。
不可变(可哈希)的数据类型:str,bool, int,tuple

1,字典的键必须是不可变(可哈希hash)的数据类型,唯一的不重复。
字典的值可以是任意数据类型(对象)。
2,字典的查询速度非常快。

二:字典的增加

  >1  字典名[key]=valuse

  

 l={'':'a','':'b','':'c','':'d'}
l['']='e'
print(l)

  >2  setdefauit(key ,valuse)

l.setdefault('','aaa2')
print(l)

 三:字典的删除

  >1 pop()   默认删除最后一个, 或者删除key,返回valuse

pop
l.pop('')
print(l)

  >2 popitem()    随机删除一个  ,3.5 版本后,默认删除最后一个

l.popitem()
print(l)

  >3 del 字典名[index]   公用删除方法.

del l['']
print(l)

  >4 clear()

l.clear()
print(l)

四 字典的改

  >1 字典名[key] = value    如果有则覆盖,没有则新增

l[''] ='A'
print(l)

  >2 update()      如果有则替换,没有则新增.

   旧字典名.update(新字典名)

l1 ={'A':'ALEB','':'B','b':'ben'}
l.update(l1)
print(l)

五 :字典的查

  >1 : 字典名[key]

  

print(l[''])

  >2 :for 循环查询

print([i for i in l])
print([j for i , j in l.items()])

  >3: get()   字典名.get(key)  返回valuse

print(l.get(''))

六 赋值运算 :

  >1 : 

a = 10
b = 20
a ,b =b,a
print(a)
print(b)

七 : 字典的嵌套

 # l5 = {
# 'A':{'1':['a','b','c','d'],'2':['yi','er','san','si']},
# 'B':{'1':['ONE','TWO','STHREE'],'2':['一','二','三','四']}
# }
# print(l5['A']['1'][0])

 

 字典的三级菜单用到了,字典的嵌套

https://www.cnblogs.com/baili-luoyun/p/10170580.html

八 相关函数

  >fromkey()     字典名.fromkey(字典1,字典2)

    从字典1 中迭代的 和字典2 组成新的字典

l={'':'a','':'b','':'c','':'d'}
l2=['','']
l4= ['','','']
l5 =l.fromkeys(l4,l2)
print(l)
print(l5)
>>>>>
{'': 'a', '': 'b', '': 'c', '': 'd'}
{'': ['', ''], '': ['', ''], '': ['', '']}

九 字典的格式化输出

# l5 = {
# 'A':{'1':['a','b','c','d'],'2':['yi','er','san','si']},
# 'B':{'1':['ONE','TWO','STHREE'],'2':['一','二','三','四']}
# } # print('%(A)s,%(B)%'%(l5))

  

总结day5 ---- ,字典的学习,增删改查,以及字典的嵌套, 赋值运算的更多相关文章

  1. Oracle的登陆问题和初级学习增删改查(省略安装和卸载)

    1:学习Oracle首先需要安装Oracle,网上已经有很多很多教程了,这里不做叙述,自己百度即可,这里安装的标准版,个人根据需求安装学习或者企业开发即可.如果安装出错,自己百度Oracle的卸载即可 ...

  2. SpringMvc学习-增删改查

    本节主要介绍SpringMVC简单的增删改查功能. 1.查询 dao中的代码 public List<WeatherPojo> getAllWeather(){ String sql=&q ...

  3. Python笔记·第六章——字典 (dict) 的增删改查及其他方法

    字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可 ...

  4. 字典 (dict) 的增删改查及其他方法

    一.字典 1.字典简介: 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无 ...

  5. mysql python pymysql模块 增删改查 查询 字典游标显示

    我们看到取得结果是一个元祖,但是不知道是哪个字段的,如果字段多的时候,就比较麻烦 ''' (1, 'mike', '123') (2, 'jack', '456') ''' 用字典显示查询的结果,也可 ...

  6. day5笔记 列表 list 增删改查

    列表的使用 一.索引和切片 # 索引和切片,用法与字符串一样 l = [1,2,3,'af','re',4,'45'] print(l[0]) print(l[3]) print(l[-1]) # ' ...

  7. 字典树(增删改查 HDU 5687)

    度熊手上有一本神奇的字典,你可以在它里面做如下三个操作: 1.insert : 往神奇字典中插入一个单词 2.delete: 在神奇字典中删除所有前缀等于给定字符串的单词 3.search: 查询是否 ...

  8. python基础之list列表的增删改查以及循环、嵌套

    Python的列表在JS中又叫做数组,是基础数据类型之一,以[]括起来,以逗号隔开,可以存放各种数据类型.嵌套的列表.对象.列表是有序的,即有索引值,可切片,方便取值.列表的操作和对字符串的操作是一样 ...

  9. python之路day05--字典的增删改查,嵌套

    字典dic 数据类型划分:可变数据类型,不可变数据类型 不可变数据类型:元组,bool,int str -->可哈希可变数据类型:list,dict,set --> 不可哈希 dict k ...

随机推荐

  1. 在Linux下删除文件及文件夹(rm)

    删除目录.文件 rm(remove) 功能说明:删除文件或目录.语 法:rm [-dfirv][--help][--version][文件或目录...]补充说明:执行rm指令可删除文件或目录,如欲删除 ...

  2. 详解jQuery的$符号和init函数

    本文所有代码,出自jQuery.1.5.2,为方便理解,引入类的概念,虽然jQuery不是基于面向对象思想. jQuery是现在最流行的JavaScript框架, $是其中最常见的符号,已经在jQue ...

  3. CoreDNS for kubernetes Service Discovery

    一.CoreDNS简介 Kubernetes包括用于服务发现的DNS服务器Kube-DNS. 该DNS服务器利用SkyDNS的库来为Kubernetes pod和服务提供DNS请求.SkyDNS2的作 ...

  4. swift - 动态计算文本高度

        func heightOfCell(text : String) -> CGFloat {        let attributes = [NSFontAttributeName:UI ...

  5. 20155335俞昆《java程序设计》第6周总结

    20155335    <Java程序设计>第6周学习总结 ##  教材学习内容总结 首先,我们需要了解输入和输出的关系,我想,这不同于c语言中的输入和输出,我们首先明白,Java中以串流 ...

  6. 23 DesignPatterns学习笔记:C++语言实现 --- 1.4 Builder

    23 DesignPatterns学习笔记:C++语言实现 --- 1.4 Builder 2016-07-21 (www.cnblogs.com/icmzn) 模式理解

  7. oracle树形语句

    oracle树查询的最重要的就是select…start with…connect by…prior语法了.依托于该语法,我们可以将一个表形结构的以树的顺序列出来.在下面列述了oracle中树型查询的 ...

  8. VS2017中对C++的单元测试

    安装Visual Studio 2017 由于平时都是用codeblock,因此电脑中没有装VS系列的IDE,就从安装开始吧 最开始安装的时候没有注意什么都没选,安装完了以后根本没有c++的编译器和各 ...

  9. 第一周leetcode

    3/27 胡乱投了一堆简历,做了七牛的笔试,看了腾讯的面试题 感觉不懂的还是很多啊,不过也知道了笔试套路其实也不多,基本算法/数据结构(不会太难).c/c++基础(后面的知识类似虚函数需要了解).li ...

  10. akka 练手 原来第一次是原封不动的返回传出去的参数

    今天,有介绍akka的文章,就下了个源码的demo练手! 在TimeServer 这个实例中主要就2个文件 server端 static void Main(string[] args) { usin ...