5.9_Python_字典的创建与删除(python字典的操作)
off999 2024-11-02 12:32 36 浏览 0 评论
字典类型。
现在去看一下字典类型,与列表和元组类型不一样。字典类型是根据一个信息去查找另外的一个信息的方式,它构成了键-值对儿,它表示索引用的键和对应的值构成的一个键-值对儿,这样的一个对应的关系。
去看一下下面这个图,上面是什么?上面这个key叫做键,是一个人的身份证号,而下面它所对应的值叫value,这个value是对应的一个具体的一个对象。由于在字典当中,它没有整数索引的概念,所以要想检索字典当中的元素,可以通过这个键去检索元素。
与列表一样,字典也是Python当中的可变数据类型,也就说学两个可变数据类型了,一个是列表一个是字典,所以它是可变数据类型,它具有增、删、改等一系列的操作。
与列表不同的是,字典当中的元素是无序的,因为它的底层使用了一个叫做hash的东西,第一个添加到字典当中的元素,在内存当中它并不一定是在第一位的,这就是什么无序的一个特点。而且字典当中键要求必须唯一,只能有一个,不能有重复,但是值可以出现重复。
还有最重要的一点就是,字典当中的键要求是不可变序列,所以谁可以去作为字典当中的键?字符串可以、整数可以、浮点可以、元组也可以,因为元组是学的一个不可变的数据类型,它可以但是列表是不允许作为字典当中的键的。
去看一下字典的创建方式有这样的两种。
·第一种是使用花括号直接创建字典,就这种方式,使用{去创建字典的时候,是一对key1:value1逗号这是一对,key2:value2这是又的另外的一对。
·第二种方式,它使用内置函数dict()去创建字典。
使用dict()去创建字典还有两种方式。
·第一种就是通过映射函数创建字典,它有个映射函数叫做zip,zip小括号,小括号里面它写lst1,lst2。当然也可以是元组,它怎么去操作?这是lst1,这是lst2,它会把两个列表当中对应索引位置上的元素括在一起,括在一起前面的是键,后面的是一个值,也就说10和cat括在一起,10将作为键,cat去作为值。
·还有一种就是直接使用dict 0的去创建,这是一个key1,这是一个什么?把它叫做赋值运算符,字典也是序列当中的一种,所以序列的相关操作对于字典依然可以使用。字典的删除与列表和元组的删除完全相同,都可以使用del语句句去删除。
现在去看一下字典的创建与删除,新建一个Python文件,示例5-15,字典的创建与删除。
·首先采用的第一种方式去创建字典,花括号里面写个10冒号,cat这是第一组,20冒号dog这是第二组,第三组,30冒号pet,第四组,第四组的键依然是20,它的值是一个zoo。
这个时候发现在字典当中有两个键是相同的,都是20,它的值会怎么办?程序会报错吗?当右键运行的时候发现程序没有报错,而是第二个20的值去将第一个20的值进行了覆盖。所以这种情况说明什么?当键相同时,它的value进行了覆盖,这是第一种创建字典的方式。
·再看一下第二种创建字典的方式,使用zip函数映射。首先有一个lst1里面有这样10、20、30、40这样的4个元素,list2,cat、dog,pet,zoo,car,有这样的5个元素,一个是4个元素一个是5个元素。
在使用zip函数去进行映射的时候情况会怎么样?去输出一下zipobj,当单击右键运行的时候发现它是一个zip对象,也就是说映射的结果是一个zip对象,根本没有看到里面的内容。如果想看到里面的内容,第一种方式可以使用list去进行转换。list内置函数就是将映射对象转成列表类型。将映射对象转成列表类型之后发现列表当中的元素是元组类型,第一个列表当中的元素做第一个元素,对应所有位置上元素是元组的第二个元素。
这个时候看到了转成列表之后里面的结果是什么?如何去把它转成字典?要把第10行注释掉,使用内置函数dict,然后把zipobj对象放进来,就是映射对象放进来,输出d,单击右键运行的时候发现这个时候输出的d才是真正的字典类型。
为什么要将第10行注释?因为如果不注释掉,zipobj就是映射对象里面内容已经转成列表类型了,所以不能再去转成字典了,因为它已经没有元素了,要把第10行注释掉之后再使用dict再去转。
·再去看一下还有一种创建字典的方式,使用参数创建字典,d=dict()里面就是赋值的这种形式,cat=10,dog=20赋了两个值,先在单击先把它输出,再单击右键运行,发现这个时候谁是键?cat是键就左边的是键,右侧的是值value了。
现在去创建一个元组,在这写个10,20、30元组当中的元素是10、20和30,现在去看一下可不可以使用元组去作为键?t冒号10,这是谁?t是键,就元组是键,10是value可不可以?单击右键运行一下,发现元组是可以作为字典当中键的,列表可不可以?列表lst=[10,20,30]。
列表和元组区别:元组使用小括号,列表使用方括号,这个时候去看一下lst去做键10去做值,当单击右键运行的时候发现程序报错了,告诉你lst是一个没有hash的,也就说什么列表是不可以去作为字典当中的键的。因为列表是可变数据类型,所以可以总结出来可变数据类型是不能作为字典当中的键的。
字典属于谁?字典属于序列,它是属于序列的,所以序列当中的方法可以使用,比如求最大值、最小值、长度,让它求max,运行一下,发现它告诉你最大值是谁,告诉你最大值是一个dog,最小值。再求一下长度,长度计算的是字典当中元素的个数,最大只是dog,最小只是cat,它的长度是2,说明里面有两个元素。
再去看一下字典的删除,del d,d是字典的名称,删除之后再输出一下,当删除之后再输出的时候发现它告诉你怎么样?没有定义了,也就说删除之后就不能在这里使用了。
在这有一个注意事项,注意事项是什么?字典当中键应该是无序的,但是在这里头写的时候发现第一个添加的是10,重新运行一下,第一个是20、20、30、40,发现它是有序的,可能会对你造成误解。
需要跟你说一件事情,就是字典当中键无序的这件事情永远是正确的,但是为什么现在看到的好像与添加顺序是一致?是因为在Python 3.6版本之后解释器进行了处理,所以看到的输出的顺序和添加顺序是一致的,是因为解释器做处理了。
当然如果愿意可以再去安装一个3.5的版本,3.5及之前的版本,这个时候就会看到键是无序的,
相关推荐
- 网络监控系统(网络监控系统原理图)
-
那得看监控方式和网络环境。一、本地监控,即与摄像头有线连接本地使用电脑或录像机监控,是可以不接路由器的。可以通过交换机或录像机进行监控。二、远程监控,这种方式需要,摄像头和监控端都接入互联网。而现在大...
- 免费小说阅读器哪个好(好用又免费的小说阅读器)
-
你好,你要在手机上面看的话,推荐追书神器和小书亭,这两个都有全网搜索和换源功能,所以是免费阅读小说,免费下载小说的如果是要在电脑上面的话,可以用书荒阅读器,天天阅读器,还有鹰爪阅读器,有免费阅读和下载...
- 星星动漫网(星辰影院)
-
星蝶公主。《星蝶公主》(英语:Starvs.theForcesofEvil)是迪士尼电视动画制作的美国动画电视喜剧。该系列于2015年1月18日在迪士尼频道首映,并将于2015年3月30日在...
- 股票软件下载大全(股票软件下载大全官网)
-
股票APP要指标齐全,自选股方便,看行情方便,可以用益盟操盘手、国泰君安,看具体指标、筹码分布比较方便,有看主力资金流入情况的指标。也可以用招商证券,筹码分布更清楚,主力流入、封板时间、封涨大减指示比...
-
- 使命召唤2手机版下载(使命召唤2免费下载)
-
步骤/方式1首先进入STEAM主页界面,点击【游戏中心】。步骤/方式2在游戏中心的搜索栏,搜索【使命召唤】。步骤/方式3搜索完毕后,在下方选择【使命召唤19(战区2)】。步骤/方式4在使命召唤19:战区2主页中,点击【下载客户端】即可。...
-
2026-01-18 20:03 off999
-
- 下载电影的软件(下载电影软件排行榜前十名)
-
果断PPTV的VIP破解版本,不要升级,享受vip无限制下载,文件在pptv下download文件夹中,如果出现乱码可以对照电影时间修改名字,另推荐一个电影播放器,mxplayer,手势操作,不再需要点很多次才能把电影拖到想要的位置,请楼主...
-
2026-01-18 19:51 off999
- 最火手游排行榜2025(最火手游排行榜2020歌曲)
-
1、艾尔文:艾尔文是游戏中公认的最强角色,这方面毋庸置疑,强大的属性以及实用性。2.利昂:天赋是每移动一格就可以增加百分5的攻击力,防御力可以提升百分10,攻击之后还有一次全新移动的机会,拥有强大的移...
- 网络电视在线观看高清(网络电视在线电视直播大全)
-
如果网站已建好,可以嵌套一些现成的加密sdk小程序,实现对视频的保护,防止下载、恶意传播、播放等;1做防盗链处理,防止下载;2视频加密sdk,对视频本身进行加密处理,即使被下载,也无法播放!;3...
- cad提供的激活码16组(autocad2014永久激活码16个)
-
1.断开网络,拔除网线或禁用网卡;2.安装时输入序列号“666-69696969”,产品密钥“001H1”;3.安装完毕后启动AutoCAD2017,点击“激活”,然后选择“使用脱机方法申请激活码...
- 163com免费邮箱(163邮箱网页版入口)
-
163邮箱官网首页入口为http://mail.163.com/网易163免费邮箱--中文邮箱第一品牌.容量自动翻倍,支持50兆附件,免费开通手机号码邮箱赠送3G超大附件服务.支持各种客户端软件收发,...
- 三国老款经典单机游戏(老版的三国单机游戏)
-
《三国战记》;《三国群英传》;《三国志》;《三国杀》。游戏介绍:《三国战记》:《三国战纪:风云再起》游戏背景为东汉末年,异象四起:连年天灾、作物欠收、民不聊生,连带影响税收。以张角为首的黄...
- 视频转换器哪个好(视频转换器排行榜)
-
建议使用狸窝转换器,它功能齐全,界面简洁,体积小,速度快。嗨格式视频转换器是一款非常实用的视频文件转换工具,它可以将各种视频格式之间进行转换,例如将MP4、AVI、MOV等视频格式转换成其他常见的视频...
-
- 自动算税软件(自动算税软件怎么用)
-
1、首先,打开手机,找到appstore,在appstore内输入个人所得税。点击获取之后会在页面底部出现如下弹框,点击安装。2、之后会出现如下弹框,显示获取个人所得税app需要进行一个简短的验证才可以,点击继续按钮。在输入框内输入上面...
-
2026-01-18 18:03 off999
- 农场类模拟经营游戏(一款很老的农场游戏)
-
个人觉得《真实模拟农场3D》好玩!这是一款以经营农场为主题的模拟类游戏,你会马上成为一个农场主人。负责一块开阔农场的日常运营,把自己的农场运作的蒸蒸日上,成为最富有的农场主。玩家可以驾驶拖拉机,收割机...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
Python 批量卸载关联包 pip-autoremove
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
