python全栈 字典数据类型相关知识及操作
python 全栈开发
一.字典
1. 字典的概念:
字典 : dict 用 {} 来表示, 键位值数据. { key , value } 具有唯一性.
键:都必须是可哈希的 不可变的数据类型就可以当做字典中的键
值;没有任何限制
dic = {'name':'alex','age':9000} #字符串
print(dic)
dic = {1:'a',2:'b',3:'c'} #数字
print(dic)
dic = {True:'1',False:'0'} #布尔值
print(dic)
dic = {(1,2,3):'abc'} #元组
print(dic)
dic = {[1,2,3]:'abc'}
print(dic)
2.字典的增删减除
(1)字典的增添
dic[ key ] = value 新增
dic.setdefauit ( key , value) 如果键在字典中存在,就不进行任何操作,不存在就进行添加. 可以通过 key 查询. 如果没有这个 , key就会返回 None.
(2)字典的删除
pop( key) 通过 Key 删除, 有返回值,返回的是被删除的 value.
del dic[ key ]
clear( ) 清除
dic.popitem( ) 随机删除, 返回值是一个元组 ( key , value)
(3)字典的修改
dic [ key ] = value 强制修改
dic.update(字典 ) 升级,更新修改
(4)字典的查询
for 循环 循环默认获取字典中的键
dic [ key ] 没有这个键时会报错
get ( key ) 没有这个时会返回None 可以指定返回内容.
setdefault ( key) 注: 这个坑比较大.
dic = {'李启政':'小李','孙福来':'小孙','张庆':'小张','郑强':'小郑'}
字典的增添
dic ['徐建'] = '小徐'
print(dic)
dic.setdefault('徐建','小徐')
print(dic)
字典的删减
dic.pop('李启政')
print(dic)
del dic['李启政']
print(dic)
dic.popitem()
print(dic)
字典的修改
dic ['李启政'] = '李超奇'
print(dic)
dic.update(dic)
print(dic)
字典的查询
for i in dic:
print(i)
print(dic['李启政'])
print(dic.get('李启政'))
print(dic.setdefault('李启政'))
3.字典的其他操作: (字典中独特的部分)
keys 获取字典的每一个键,存在一个高仿的列表中
values 获取字典中每一个值,存在一个高仿的列表中
items 获取字典中每一个键值对, 以元组的形式存在一个高仿的列表中
解构 ( 解包)
a , b = 1, 2 #将后面的解构打开按位置赋值给变量.
a , b = (1 ,2) 支持字符串,列表,元组.
a , b = [1 , 2]
print(a)
(b)
其他操作(字典中独特的)
keys values items print(dic.keys()) # (高仿列表)
print(dic.values()) # (高仿列表)
print(dic.items())
for i in dic.keys():
print(i) for i in dic:
print(i) #获取到字典中的每一个键 for i in dic.values():
print(i) #获取到字典中的每一个值 for i in dic.items():
print(i) 解构(解包) a,b = '12' #将后边解构打开按位置赋值给变量 支持 字符串 列表 元组
print(a)
print(b)
4.字典的嵌套
dic = {
'name':'汪峰',
'age':43,
'wife':{
'name':'国际章',
'age':39,
'salary':100000
},
'baby':[
{'name':'熊大','age':18},
{'name':'熊二','age':15},
]
}
dic['baby'][0]['age'] = 19
print(dic)
python全栈 字典数据类型相关知识及操作的更多相关文章
- python 全栈开发,Day61(库的操作,表的操作,数据类型,数据类型(2),完整性约束)
昨日内容回顾 一.回顾 定义:mysql就是一个基于socket编写的C / S架构的软件 包含: ---服务端软件 - socket服务端 - 本地文件操作 - 解析指令(mysql语句) ---客 ...
- python 全栈开发,Day32(知识回顾,网络编程基础)
一.知识回顾 正则模块 正则表达式 元字符 : . 匹配除了回车以外的所有字符 \w 数字字母下划线 \d 数字 \n \s \t 回车 空格 和 tab ^ 必须出现在一个正则表达式的最开始,匹配开 ...
- python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)
昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...
- Python全栈day10(基础知识练习题)
一,执行python的两种方式 1,写在脚本里面调用python执行,例如python test.py 2, 输入python在命令行交互执行,例如 python >>> pri ...
- python 全栈开发,Day54(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)
04-jQuery的属性操作 jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作 html属性操作:是对html文档中的属性进行读取,设置和移除操作.比如at ...
- 巨蟒python全栈开发-第8天 文件操作
一.文件操作 今日大纲: 1.文件操作->open() open 打开 f=open(文件路径,mode='模式',encoding='编码格式') #python最最底层操作的就是bytes ...
- python学习之老男孩python全栈第九期_day009之文件操作总结
# 文件处理# 打开文件# open('路径','打开方式', '指定编码方式')# 打开方式:r w a 可读可写:r+ 可写可读:w+ 可追加可读:a+ b# r+ :打开文件直接写,和读完再写 ...
- 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】
点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...
- python全栈 字符串,整数,bool 数据类型运用
python全栈 一.基本数据类型 1.int: 整数 2.str: 字符串, 一般不存放大量数据. 3.bool: 布尔值,用来判断. True 或者 False 4.list: 列表,用来存 ...
随机推荐
- nodejs基础学习1
ES6常用新语法 ES6新语法 什么是ES6? 由于JavaScript是上个世纪90年代,由Brendan Eich在用了10天左右的时间发明的:虽然语言的设计者很牛逼,但是也扛不住"时间 ...
- <spark> ~/spark/conf/spark-default.conf 配置文件
因为看到我参考的Hadoop/spark集群搭建的文档中的都没有对 /spark-default.conf 的配置 合理地对 /spark-default.conf 进行配置,能够提高执行效率 -- ...
- 正则表达式-使用说明Regular Expression How To (Perl, Python, etc)
notepad++ wiki about regular expression 正则表达式-使用说明Regular Expression How To (Perl, Python, etc) http ...
- iOS保存gif动态图
- (void)saveImageToPhotos:(NSData*)gifData { /***注意先倒入库 #import <AssetsLibrary/AssetsLibrary.h> ...
- py库: Tesseract-OCR(图像文字识别)
http://blog.csdn.net/u012566751/article/details/54094692 Tesseract-OCR入门使用1 http://blog.csdn.net/u01 ...
- mybatis三(关联查询)
一.类属性 @Alias("depart")public class Department { private Integer id; private String departN ...
- Linux——JDK配置
一.安装jdk-7u21-linux-x64.rpm文件 [root@centos6 local]# rpm –ivh jdk-7u21-linux-x64.rpm 二.防火墙开放8080端口 (在 ...
- POI解析大量数据
参考:https://blog.csdn.net/whandgdh/article/details/80267674
- js window.open隐藏参数提交
1.采用form方式提交 var url = "page/public/exportExcel.jsp"; //create a form var tempForm = docum ...
- hadoop动态添加删除节点datanode及恢复
1. 配置系统环境 主机名,ssh互信,环境变量等 本文略去jdk安装,请将datanode的jdk安装路径与/etc/hadoop/hadoop-evn.sh中的java_home保持一致,版本ha ...