Python从入门到精通之Fifth!
字典 类名:dict 字典是无序的。
字典的创建 info = {"k1":{1:"abc",[1,2,3]},"k2":True},可以进行字典的嵌套,value可嵌套任意类型。
列表不可以作为字典的key,元组可以,因为列表是动态的,可以修改,而元组不可以。布尔值会与1和0重复,则会不显示。
#字典的取值
info = {"k1":123,"k2":True,"k3":(12,"aaa",),"k4":"bbb"}
v = info["k1"]
print(v) ========> 123
n = info["k3"][0]
print(n) ========> 12
字典的循环,可迭代对象
info = {"k1":18,
"k2":True,
"k3":(11,22,33,44,)
"k4":[11,[],(),{"kk3":(123,"asd",),"kk2":"vv2","kk1":"♀"}]
}
#字典支持for循环,不支持while循环,因为key值是无序的。默认循环键keys,可通过values方法进行循环值
for item in info.keys/values:
print(item,info[item])
#循环键值对的方法 .items()
for k,v in info.items():
print(k,v)
字典的方法
#清空字典clear
字典名.clear() #copy浅拷贝
info ={"k1":18,
"k2":True,
"k3":(11,22,33,44,),
"k4":[11,[],(),{"kk3":(123,"asd",),"kk2":"vv2","kk1":"♀"}]
}
n = info.copy() ########静态方法######## 支持dict(类名).方法名
#fromkeys()更具序列,创建字典,并指定统一的key值 v = dict.frokeys(["k1",123,""])
print(v) =========>{123:None,'k1':None,'':None}
a = dict.fromkeys(["k1",123,""],123)
print(v) =========>{123:123,'k1':123,'':123}
注意:静态方法 支持dict(类名).方法名
一般的取值时如果字典中不存在所取的key键,那么取值会报错,但是使用get方法不会。
#get根据key获取值,key不存在时,默认取值None,或者设置其他。
dic = {"k2":123}
v = dic.get("k1",1111)
print(v) ======>1111
#pop() 方法删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
####语法:pop(key[,default])#####
dic = {
'k1':'v1',
'k2:'v2'
}
v = dic.pop("k1",111111)
print(dic,v) ======>{'k2':'v2'}111111 #popitem()不加参数,随即删除一个键值对
例如:dic.popitem()
setdefault() 函数和get() 方法类似, 如果键不存在于字典中,将会添加键并将值设为默认值。
setdefault()方法语法:dict.setdefault(key, default=None)
#update更新 2种方式
dic = {"k1":'v1',"k2":'v2'}
方法1:dic.update("k1":123,"k3":'')
print(dic) ========>{"k3":'',"k1":123,"k2":'v2'} 方法2:dic.update(k1=123,k3=345,k5="asdf")
print(dic) ========>{'k1':123,"k5":asdf,"k3":345,"k2:'v2'}
重点:keys() 、valuses() 、 items() 、get() 、 update()
*****************************************整理前5节必会*******************************************
1.数字 int()
2.字符串 replace、find、join、strip、startswith、split、upper、lower、format、
#format常用方法,注意使用字典样式前面要加上**
tempalte = "i am {name},age:{age}"
v1 = tempalte.format(name="alex",age="")
v2 = tempalte.format(**{"name":'hex',"age":19})
print(v1,v2)
=======>i am alex,age:18 i am hex,age:19
3.列表 append、extend、insert 索引、切片、循环
4. 元组 一级元素不能修改,索引、切片、循环
5.字典 keys() 、valuses() 、 items() 、get() 、 update()
6.布尔值 0 1
bool()转换为布尔值 None "" () [] {} 0 ======>False 其余都是真
Python从入门到精通之Fifth!的更多相关文章
- python从入门到精通之30天快速学python视频教程
点击了解更多Python课程>>> python从入门到精通之30天快速学python视频教程 课程目录: python入门教程-1-Python编程语言历史及特性.mkv pyth ...
- Python从入门到精通之eighth!
函数式编程与内置函数 函数作用域: def test1(): print('in the test1') def test(): print('in the test') return test1() ...
- Python从入门到精通之Sixth!
补充:enumerate 函数用于遍历序列(元组tuple.列表list.字典dict)中的元素以及它们的下标: >>> for i,j in enumerate(('a','b', ...
- Python从入门到精通之Forth!
Python基本数据类型之列表 补充:range()方法 python2: range 立即创建 xrange for循环的时候才一个一个创建 Python3: range for循环的 ...
- Python从入门到精通之Third!
Python运算符 算数运算符:+ - * / % // ** 比较运算符:== > < >= 大于等于 & ...
- Python从入门到精通之Second!
初识Python基础! -基础 -扩展名可以是任意的,但是导入模块时,如果不是.py文件就会报错. -两种执行方式 1.python解释器 文件名.py 文件路径 -Li ...
- Python从入门到精通之First!
Python的种类 Cpython Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jy ...
- Python从入门到精通之环境搭建
本章内容: Windows系统环境搭建 Linux系统环境搭建 Mac OS系统环境搭建 一.下载python安装包 下载地址:https://www.python.org/downloads/ 二. ...
- Python从入门到精通之Seventh!
函数浅析:可以减少代码重用,保持一致性,可扩展性,易维护性. 定义方法:def 函数名(形参): '''功能注释''' 代码块 打印函数名时,会出现函数的内存地址.两个函数名相同时, ...
随机推荐
- node图片资源捉取
开头先简单说明一下,因为网络资源上最多的资源就是图片,所以在这里也只简单的捉取了图片资源,至于其他的文档,音乐等我是没有试过的.所以暂时还是以图片为案例!!! Step1 首先我们需要加载我们需要的资 ...
- css note
1.text-align规定了其子元素的对齐方式,当设置在子元素无效时,尝试设置在父元素,子元素可以水平居中: 2.vertical-align使用的前提,首先元素必须是display:inline ...
- 基于MPI的大规模矩阵乘法问题
转载请注明出处. /* Function:C++实现并行矩阵乘法; Time: 19/03/25; Writer:ZhiHong Cc; */ 运行方法:切到工程文件x64\Debug文件下,打开命令 ...
- offsetWidth/offsetHeight,clientWidth/clientHeight与scrollWidth/scrollHeight的区别
offsetWidth/offsetHeight返回值包含content + padding + border,效果与e.getBoundingClientRect()相同 clientWidth/c ...
- 64位的windows服务安装问题
需要使用64位的安装exe文件才可以. @echo offC:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe -i &quo ...
- thinkphp 5 _initialize 使用问题
如果继承的是common的话.控制器的_initialize要先继承父类的_initialize parent::_initialize();
- Python学习—基础篇之常用模块
常用模块 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...
- Robot Return to Origin
There is a robot starting at position (0, 0), the origin, on a 2D plane. Given a sequence of its mov ...
- mpvue前期准备
一.配置环境: 1.下载node.js,去官网上下载相应的版本.http://nodejs.cn 2.安装就是下一步下一步,检查是否安装成功,打开cmd.输入 node -v 会出现版本号. 3.推 ...
- PDO查询结果中文乱码
PDO::MYSQL_ATTR_INIT_COMMAND (整数)连接到MySQL服务器时执行的命令.重新连接时会自动重新执行.请注意,此常量只能driver_options 在构建新的数据库句柄时在 ...