内容大纲:

  一:字典的定义

  二:字典的增加

    >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))

  

最新文章

  1. 侯捷老师C++大系之C++面向对象开发:(一)不带指针的类:Complex复数类的实现过程
  2. WKWebView
  3. ubuntu 安装 netbeans C++ IDE
  4. JSP与Servelt的区别
  5. ---Under Ubuntu 14.04
  6. php经典面试题与答案(转先锋教程网)
  7. [Node.js] 也说this
  8. 多个UIImage合并成一个UIImage
  9. vmware-tools安装指南
  10. 神奇的问题记录【SqlDataAdapter Fill DataSet】
  11. Bzoj 2186: [Sdoi2008]沙拉公主的困惑 乘法逆元,线性筛,欧拉函数,数论
  12. Microsoft SqlSever 数据库--软谋1
  13. jacascript 判断元素尺寸和位置
  14. servlet什么时候被实例化?【转】
  15. oracle、grid 用户ID
  16. Struts学习资料
  17. [原创]升级Gerrit的commit-msg,检查git commit时必须填写开发任务编号TaskID
  18. java Socket 获取本地主机ip
  19. 【Android】WebView读取本地图片
  20. 什么叫TLD、gTLD、nTLD、ccTLD、iTLD 以及几者之间的关系

热门文章

  1. sqlserver select 查询字段if判断用法
  2. sqlserver 开窗函数Over()的使用
  3. zookeeper的ZAB协议
  4. php从数组中取出一段 之 array_slice
  5. $_SERVER["HTTP_HOST"]
  6. IntelliJ IDEA 2017版 导入maven项目需要的包
  7. redis 设置认证
  8. mysql 开通远程连接
  9. angularjs之事件绑定、解除事件绑定
  10. [转]快速入门系列--WebAPI--01基础