字典  类名: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!的更多相关文章

  1. python从入门到精通之30天快速学python视频教程

    点击了解更多Python课程>>> python从入门到精通之30天快速学python视频教程 课程目录: python入门教程-1-Python编程语言历史及特性.mkv pyth ...

  2. Python从入门到精通之eighth!

    函数式编程与内置函数 函数作用域: def test1(): print('in the test1') def test(): print('in the test') return test1() ...

  3. Python从入门到精通之Sixth!

    补充:enumerate 函数用于遍历序列(元组tuple.列表list.字典dict)中的元素以及它们的下标: >>> for i,j in enumerate(('a','b', ...

  4. Python从入门到精通之Forth!

    Python基本数据类型之列表 补充:range()方法 python2: range   立即创建 xrange  for循环的时候才一个一个创建 Python3: range     for循环的 ...

  5. Python从入门到精通之Third!

    Python运算符 算数运算符:+    -    *   /     %    //    **  比较运算符:==    >     <     >=   大于等于      & ...

  6. Python从入门到精通之Second!

    初识Python基础! -基础     -扩展名可以是任意的,但是导入模块时,如果不是.py文件就会报错. -两种执行方式      1.python解释器       文件名.py 文件路径 -Li ...

  7. Python从入门到精通之First!

    Python的种类 Cpython Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上. Jy ...

  8. Python从入门到精通之环境搭建

    本章内容: Windows系统环境搭建 Linux系统环境搭建 Mac OS系统环境搭建 一.下载python安装包 下载地址:https://www.python.org/downloads/ 二. ...

  9. Python从入门到精通之Seventh!

    函数浅析:可以减少代码重用,保持一致性,可扩展性,易维护性. 定义方法:def 函数名(形参):     '''功能注释'''      代码块 打印函数名时,会出现函数的内存地址.两个函数名相同时, ...

随机推荐

  1. thinkphp5.1 使用success();和error();要注意的点

    public function succ() { $this->success(); $this->error(); } 这里的$this-> 老是忘掉 记录一下

  2. arcgis point 随着 line类型的轨迹运动的动画

    animate : function(frampoint,topoint,speed = 60){ var path = topoint.geometry.paths[0]; var i = 1; v ...

  3. 关于MVC工厂模式的增删改查sql存储过程

    这里MVC中用到了反射,工厂,泛型,接口 在搭建框架的时候,除了MVC的三层以外,还有泛型的接口层和工厂层 下面是dal层调用sql存储过程,增删改查,dal层继承了接口层,实现了接口层里面的方法 1 ...

  4. hbuilder 打包 vueAPP

    1:设置状态栏颜色 在manifest.json 找到 plus 下添加 "statusbar": { "immersed": true/*沉浸式状态栏*/ 设 ...

  5. 4. Go常量

    常量就是那些不可以改变的值 Go语言中定义常量的方式: const a = "admin" 则 a 就是一个常量,但实际上其后面的 "admin" 也是一个字符 ...

  6. mongodb突然出现不是内外部命令或可执行

    可能因为晚上突然停电,电脑突然关机,给mongoDB造成影响,第二天出现了: 通过百度搜索与尝试:https://blog.csdn.net/hh12211221/article/details/78 ...

  7. SwipeBackLayout 右滑退出Activity

    不推荐通过添加依赖的方式来导入类库,因为本人导入后出现没法解决的问题. 这里推荐自己导入第三方库类,地址如下: https://github.com/yangzhilong00/MEvolution/ ...

  8. 记忆化搜索 P1464 Function

    题目描述 对于一个递归函数w(a,b,c) 如果a≤0 or b≤0 or c≤0就返回值1. 如果a>20 or b>20 or c>20就返回w(20,20,20) 如果a< ...

  9. JVM、垃圾收集器

    1.Java虚拟机原理 所谓虚拟机,就是一台虚拟的机器.他是一款软件,用来执行一系列虚拟计算指令,大体上虚拟机可以分为系统虚拟机和程序虚拟机, 大名鼎鼎的Vmare就属于系统虚拟机,他完全是对物理计算 ...

  10. web前端技术体系大全

    一.前端技术框架 1.Vue.js 官网:https://cn.vuejs.org/ Vue CLI:https://cli.vuejs.org/ 菜鸟教程:http://www.runoob.com ...