Python学习笔记(二)情侣关系的典范——————字典

之前的学习笔记中,对列表的进行了介绍,之后对列表介绍的博客看了一下,感觉不是很好懂,所以,这一次用尽量简洁的语言将字典与列表进行对比,方便大家对两种数据的理解。
与列表相比,字典最大的优势在于查找关键数据时,可以不用遍历,可以像查字典一样,按照特征去查找,就比如说查任何一个字,都可以先找偏旁部首,之后再找字的笔画,确定在字典的第几页,这也就是字典与列表最大的不同。

字典与列表的不同

所以字典主要有以下几个不同的地方:
(1)序列上
列表是有序的,按照先来后到的顺序,列表内的值是有序排列的;
字典内数据的值是无序的,没有先来后到这一说,你怎么来都行。
(2)数值对应上
列表是单身狗,数值只是自己;
字典则是恩爱的二人时间,由前面的键(Key)和后面的值(Value)共同构成,索引的时候,可以通过键找到值,不能将二人分割开。(单身狗狂哭)
(3)表示方式上
列表既然在(2)内被称为单身狗,就要对得起单身狗的称呼,所以列表的标识是方括号,是个直的。

lst=[100,200,300,400]

但是,字典他不是单身狗,情侣间表达爱意的一种方式就是送花呀,所以,字典的括号是个方括号。

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}

字典的创建

既然介绍了两者的区别,现在介绍字典的创建方式,字典的创建方式主要有两种,一种是花括号的方式直接创建(自由恋爱,送花的时候大概率就是确定关系啦),另一种则是利用内置函数创建(有点像大型相亲现场,通过指定赋值的方式实现字典的创建),代码如下:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
dic1=dict(姓名='Jack',身高=185,体重=75,Age=28)#中间赋值的时候要用等号,像不像在等另一半时候的我们
print(dic)
print(dic1)

字典元素的获取

好了,现在大家已经找到了各种另一半,大家也聚在了一起,这个时候,需要找出一对情侣时,你可以不用找到两个人,只需要找到他们中的一个就可以,所以这里我们介绍字典获取值得方式,也是有两种,一种是利用方括号的形式,另一种则是利用 .get()的方式:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
dic1=dict(姓名='Lucy',身高=165,体重=55,Age=24)
print(dic['姓名'])
print(dic1.get('姓名'))

输出结果为:
在这里插入图片描述
但是这两种方式在面对键值不存在的时候,反应却不一样,就像两个人群,一个你不熟悉,你大喊一声,没人反应,只能从大家的默认看出是没有这个值得,这个就是方括号的方式:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
print(dic['房产'])

输出结果为:
在这里插入图片描述
但是当你和大家熟悉,你找人的时候,他们就会给你回应,如果拟规定了大家的习惯,甚至他们还能给你比个心,这个就是get的方式:

dic1=dict(姓名='Lucy',身高=165,体重=55,Age=24)
print(dic1.get('房产'))
print(dic1.get('房产',99))

输出结果为:
在这里插入图片描述
这里面的99就是你告诉人群,你找的人不在时,他们需要对你的反应。
此时如果你想清点在场的所有人,你就需要对字典中的元素进行遍历,但是遍历的内容却只是字典中的Key,要想输出值就需要以上两种方式:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
for i in dic:
    print(i,dic[i])
    print(i,dic.get(i))

输出结果为:
在这里插入图片描述

字典元素删改

先说说查字典,这个简单,只需要in 和 not in 就可以判断key是否在你所搜索的字典中了:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
print('房产' in dic)

输出结果为:
在这里插入图片描述
之后就是字典中元素删除啦,比如说情侣游戏中,你淘汰了一个人,就是淘汰了一对人,所以在字典中也是如此,如果删除一个Key就是剔除了Key和其所对应的Value,这里用到的函数就del函数:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
del dic['Age']
print(dic)

输出结果为:
在这里插入图片描述
而另外一个函数clear的方式,更像是游戏结束后的清场,一对情侣也不留下:

dic={'姓名':'Jack','身高':185,'体重':75,'Age':28}
dic.clear()
print(dic)

输出结果为:
在这里插入图片描述

字典的生成式

对于有着相同名称,却有不同条件的东西,我们就需要一个固定的模式去生成他,就像人有很多很多,但是个人的特征却有不同,我们这个时候就可以用字典的生成式去生成字典,也是多个列表向字典转化的一种方式,此时用到的就是内置函数zip():

shuxing=['姓名','身高','体重','年龄']
Pi=['Jack',185,75,28]
Pj=['Lucy',165,55,24]
jack={i:j   for i,j in zip(shuxing,Pi)}
lucy={i:j   for i,j in zip(shuxing,Pj)}
print(jack)
print(lucy)

输出结果为:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值