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: 列表,用来存 ...
随机推荐
- Git工作流基础简介【与产品经理.jpg】
基于可视化界面的操作可使用Sourcetree这个软件进行操作. 下面将描绘的几个命令主要是 git init git add git commit git status git reset HEAD ...
- ROS学习手记 - 6 使用ROS中的工具:rqt_console & roslaunch & rosed
http://wiki.ros.org/ROS/Tutorials/UsingRqtconsoleRoslaunch Using rqt_console and roslaunch This tuto ...
- 【转】AD常用端口
通常在域环境中我们有部分设备在DMZ区时,就需要知道AD的相关端口.在此提供给各位: 用户登录与验证身份时会用到的连接端口用户登录时会用到以下的服务,因此如果用户的计算机与域控制器之间被防火墙隔开,就 ...
- Flex4学习笔记 checkBox RadioButton DropDownList colorPicker
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...
- python setattr
#object生成的对象不能使用setattr函数>>> o=object() >>> setattr(o,'name','ok') Traceback (most ...
- Spring MVC 的springMVC.xml疑问解析
<mvc:annotation-driven /> <mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping ...
- jqGrid pivot获取所有行包括小计数据及原码分析
1.结论:按正常jqGid获取,在中间加入以下代码,即将小计行当成改变为普能行,以便能让'getRowData'方法获取到,第三点会进行原码分析 //get all page grid data,in ...
- JDK7和JDK8concurrentHashmap区别
哈希表 1.介绍 哈希表就是一种以 键-值(key-indexed) 存储数据的结构,我们只要输入待查找的值即key,即可查找到其对应的值. 哈希的思路很简单,如果所有的键都是整数,那么就可以使用一个 ...
- Notepadd ++ PluginManager安装
下载地址https://github.com/bruderstein/nppPluginManager/releases 解压后有2个包plugins和updater 分别放入C:\Program F ...
- greenplum
参考文章:在linux系统上安装Greenplum数据库 https://blog.csdn.net/mingli_a/article/details/78779189 Greenplum安装步骤 ...