当前位置:网站首页>字典
字典
2022-08-09 09:20:00 【qq_35774189】
1、字典是一种映射:包含下标(键)和值,每一个键都和一个值相关联,键和值之间的关联称为键值对
第1行:新建一个不包含任何项的字典;第2行:花括号表示一个空的字典。给字典添加新项,可以使用方括号操作符,如第3-6行;第7行为打印这个字典的结果,以冒号分隔
***字典中键值对的顺序可能并不相同***,字典是利用键查找对应的值
如果一个键不存在字典之中,会得到一个异常,如第8行
2、len函数返回键值对的数量
in操作符判断一个值是不是字典中的键(第11行),字典中的值不算(第12行);values方法可以查看一个值是不是出现在字典的值中,它返回一个值集合(第13行),利用in操作符判断某个值是否在值集合中(第15行)
***in操作符对列表和字典使用不同的算法实现。对于列表,按顺序搜索列表中的元素。对于字典,python使用一个称为散列表的算法,不管字典中有多少项,in操作符花费的时间都差不多。
3、使用字典作为计数器集合
建立一个字典,以字符为键,以计数器为相应的值。第一次遇到某个字符时,在字典中添加对应的项。之后可以增加一个已经存在的项的值
字典实现计数器的优势:我们并不需要预先知道字符串中可能出现哪些字母,因而只需为真正出现过的字母分配空间。
字典的get方法,接收一个键以及一个默认值。如果键出现在字典中,get返回对应的值(第19行);否则返回默认值(第21行)
4、如果在for循环中使用字典,会遍历字典的键,print_dist函数打印字典的每一个键以及对应的值
5、取出键为a对应的值为1
6、以上键的出现没有特定的顺序。要按顺序遍历所有的键,可以使用内置函数sorted
7、给定一个字典d和键k,找到对应的值v=d[k],以上可以解决
如果有v,想找到对应的键k,存在两个问题:①可能存在多个键映射到同一个值v上;②并没有进行反向查找的简单语法,需要使用搜索
下面是一个函数,接收一个值,并返回映射到该值的第一个键
raise语句会生成一个异常,LookupError,这是一个内置异常,通常用来表示查找操作失败。
8、字典和列表
每次循环,key从d中获取一个键,val获得对应的值。如果val不在inverse字典中,意味着我们还没有见过它,所以新建一个项,否则我们见过这个值,将相应的键附加到列表末尾。
详见《像计算机科学家一样思考Python》第11章
边栏推荐
- MySQL lock
- 软件测试面试思路技巧和方法分享,学到就是赚到
- JMeter初探五-配置元件与参数化
- 多维度LSTM(长短期记忆)神经网络预测未来存款余额走势
- 软件测试个人求职简历该怎么写,模板在这里
- A first look at the code to start, Go lang1.18 introductory refining tutorial, from Bai Ding to Hongru, the first time to run the golang program EP01
- MySQL indexes
- 本体开发日记05-努力理解SWRL(上)
- 秒拍app分析
- 全球19级谷歌卫星地图免费查看下载
猜你喜欢
MVCC多版本并发控制
Swap swap partition
第三方免费开放API 获取用户IP 并查询其地理位置
Django实现对数据库数据增删改查(一)
Redis high availability
The div simulates the textarea text box, the height of the input text is adaptive, and the word count and limit are implemented
China to create a domestic "Google Earth" clarity scary
运行flutter项目时遇到的问题
使用图新地球无法加载谷歌地球的完美解决方法(附软件下载)
性能测试包括哪些方面?分类及测试方法有哪些?
随机推荐
软件测试的流程规范有哪些?具体要怎么做?
自动化测试框架有哪几种?搭建的思路是什么?一篇文章让你彻底了解自动化
学习双向链表的心得与总结
学习栈的心得和总结(数组实现)
MySQL查漏补缺(二)排序检索、过滤数据、模糊查询、正则表达式
C语言单、双引号的区别
RPC服务远程漏洞
真·鸡汤文
你一定要看的安装及卸载测试用例的步骤及方法总结
Venture DAO Industry Research Report: Macro and Classic Case Analysis, Model Summary, Future Suggestions
TypeScript简记(一)
使用Protege4和CO-ODE工具构建OWL本体的实用指南-1.3版本(4.Building An OWL Ontology)
[Environmental Construction] tensorrt
中国打造国产“谷歌地球”清晰度吓人
进入大厂的面试经验(P7)
MVCC multi-version concurrency control
上帝视角看高清村庄卫星地图,附下载高清卫星地图最新方法
swap交换分区
软件测试外包公司怎么样?有什么好处和坏处?为什么没人去?
Redis Basics