内容大纲:

  一:字典的定义

  二:字典的增加

    >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. 流形学习 (Manifold Learning)

    流形学习 (manifold learning) zz from prfans............................... dodo:流形学习 (manifold learning) ...

  2. DSOframer 的简单介绍和资源整理(2015-09-02重新整理)

    DSOframer 是微软提供一款开源的用于在线编辑 Word. Excel .PowerPoint 的 ActiveX 控件.国内很多著名的 OA 中间件,电子印章,签名留痕等大多数是依此改进而来的 ...

  3. 3D 点云特征

    博客参考: https://blog.csdn.net/shaozhenghan/article/details/81346585 和 https://www.cnblogs.com/li-yao77 ...

  4. MYISM表并发写请求过多 导致无法被读取解决方案

    MyISAM锁调度是如何实现的呢,这也是一个很关键的问题.例如,当一个进程请求某个MyISAM表的读锁,同时另一个进程也请求同一表的写锁,此时MySQL将会如优先处理进程呢?通过研究表明,写进程将先获 ...

  5. 初次使用Xcode遇到的问题及解决方法

    使用的是Xcode 5.1.1 版本 1.调整字体 点击左上角的Xcode->Preference->Font  & colors .需要注意到是,只有选择下图中黑色框框里面的一行 ...

  6. cpuinfo

    在Linux系统中,如何详细了解CPU的信息呢? 当然是通过cat /proc/cpuinfo来检查了,但是比如几个物理CPU/几核/几线程,这些问题怎么确定呢? 经过查看,我的开发机器是1个物理CP ...

  7. PostgreSQL CPU满(100%)性能分析及优化

    业务场景:大批量更新时,数据库长时间CPU占用超过90,影响其他正常业务流程,参考阿里云上的一篇文章:https://help.aliyun.com/knowledge_detail/43562.ht ...

  8. Windows sql语句正则匹配导出数据到本地 The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

    尝试使用 into outfile导出数据的时候出现错误: The MySQL server is running with the --secure-file-priv option so it c ...

  9. (4)-optXXX方法的使用

    在JSONObject获取value有多种方法,如果key不存在的话,这些方法无一例外的都会抛出异常.如果在线环境抛出异常,就会使出现error页面,影响用户体验,针对这种情况最好是使用optXXX方 ...

  10. 使用 log4j 打印日志

    开发阶段:发现程序的问题,排错 产品阶段:记录程序运行的状况 Maven中配置依赖 通过配置文件输出日志的格式,输送的位置等 一.入门实例 1.新建一个JAva工程,导入包log4j-1.2.17.j ...