内容大纲:

  一:字典的定义

  二:字典的增加

    >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. ubuntu 出来菜单栏和任务栏

    http://blog.csdn.net/terence1212/article/details/51340595 命令行输入:sudo apt-get install compizconfig-se ...

  2. qt5.7 安装

    http://blog.csdn.net/liang19890820/article/details/53931813#安装-qt57 安装运行出错:qt vstool 指定qt安装路径 http:/ ...

  3. 分布式理论系列(一)从 ACID 到 CAP 到 BASE

    分布式理论系列(一)从 ACID 到 CAP 到 BASE 一.ACID 1.1 事务的四个特征: (1) Atomic(原子性) 事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程 ...

  4. windows查看内存频率

    命令行查看: wmic memorychip 任务管理器查看: 任务管理器-性能-内存-速度

  5. android安装前期遇到的问题

    1.安装的eclipse与对应的java版本位数要一致,要么32位,要么64位. 2.关于新版ADT创建项目时出现appcompat_v7的问题 更新ADT至22.6.0版本之后,创建新的安装项目,会 ...

  6. BETTER SUPPORT FOR FUNCTIONAL PROGRAMMING IN ANGULAR 2

    In this blog post I will talk about the changes coming in Angular 2 that will improve its support fo ...

  7. python sublime run快捷键设置

    一.Ctrl+Shift+P进行插件“sublimeREPL”安装 二.打开preferences->Key Binding-User,写入以下内容 [ { "keys": ...

  8. GNOME桌面的安装

    首先搭建yum仓库 http://www.cnblogs.com/jw35/p/5967677.html yum grouplist                     #列出yum仓库里的软件组 ...

  9. CAS实战のclient自定义过滤器

    我们在配置cas client肯定写过如下代码: <filter> <filter-name>CASFilter</filter-name> <filter- ...

  10. Using Load-Balancers with Oracle E-Business Suite Release 12 (Doc ID 380489.1)

      Using Load-Balancers with Oracle E-Business Suite Release 12 (Doc ID 380489.1) Modified: 12-Jun-20 ...