零基础学Python之结构化数据(附详细的代码解释和执行结果截图)
3结构化数据
字典(查找表)、集合、元组、列表
3.1字典
是有两列任意多行的表,第一列存储一个键,第二列存储一个值。
它存储键/值对,每个唯一的键有一个唯一与之关联的值。(类似于映射、表)
它不会维持插入时的顺序。
Python的字典实现为一个大小可变的散列表,它针对大量特殊情况进行了充分的优化。因此,字典可以非常快速的完成查找。
For循环可以用来迭代处理一个字典。每次迭代时,键会赋给循环变量,用来访问数据值。
'''
字典的存储结构:
各个键与相应的值用:连接;
每个值与下一个值之间用逗号连接;
开始结束用大括号{}包围
'''
person3={'Name':'ting',
'Genger':'male',
'Occupation':'Researcher',
'Home Planet':'shaanxi province'}
#在查看person3时,不是按照定义的顺序,字典中的数据是无序的。
#使用键来访问字典中的数据。
person3['Home Planet']
#会显示shaanxi province
Person3[‘Age’]=33
#向字典增加一行数据,将一个对象赋值一个新键。
回顾vowels3.py程序:

它返回的是一个单词中的元音:

而现在需要一个新的功能是列出任意一个单词中的元音以及它出现的频度。
下面研究使用字典来改进这个元音程序:
1.如何把这个字典初始化,使其中的值都为0?


2.如何递增字典中的值?

‘e’对应的数字已经变成2
3.如何迭代处理字典?
用for处理字典时,解释器只处理字典的键,而不处理值。

4.如何指定输出时的顺序?
使用sorted(found) #sorted是一个内置函数,可按照字母顺序组织输出。
用items迭代处理字典:

执行结果:

使用setdefault:为了缩短代码,减少初始化的语句,先判断键的存在并初始化。

键必须初始化!!!


只打印单词中出现的元音。这样不会输出无意义的结果。
指令:
setdefault()访问一个键之前需要确保它的存在
对于使用 if 'pear' not in fruits:
fruits['pear']=0 来初始化相比,setdefault更简单。
items()迭代处理字典。
sorted()排序。
3.2集合(set)
集合的查找速度快于列表,不允许有重复值。用’{ }’包围,对象之间用’,’分隔,
1合并集合:union

Union将一个集合与另一个集合合并,再把合并结果赋给一个新变量u,
u集合由两个集合中所有唯一的对象组成。

使用SORTED LIST函数输出一个有序的由唯一字母组成的列表u_list。
2找到非交集元素:difference

difference函数将vowels中的对象和Word中的对象进行比较,然后返回一个新的集合(d),是包含在vowels中但不在Word中的对象。
3找到交集元素:intersection

i集合由即在vowels又在set(word)中的所有对象组成。
简化vowels2程序:

3.3元组(tuple)

元组用()定义列表是【】,
一旦创建和填充数据,元组就不可变。
注意只有一个对象的元组
定义时必须在()中加上一个逗号,否则就被当作为字符串类型
此内容之前是1快速入门和2列表数据,链接已经在后面了,欢迎一起交流学习!0(≧▽≦)0:
https://www.cnblogs.com/sebastiane-root/p/9175575.html
下期4函数与模块:https://www.cnblogs.com/sebastiane-root/p/9343461.html 相信这个你看了一定有新的体会
这个编辑器(黑色背景那个)很漂亮,是吗?
在官网上可以下载sublime text3 然后找个破解版,不过在使用Python交互的函数如input时需要添加一个包,详细的步骤见链接:
https://www.cnblogs.com/ginvip/p/6241699.html
零基础学Python之结构化数据(附详细的代码解释和执行结果截图)的更多相关文章
- 零基础学python之入门和列表数据(附详细的代码解释和执行结果截图)
Python学习笔记 1 快速入门 下载安装好Python之后,在开始找到 双击打开一个窗口,这是一个shell界面编辑窗口,点击左上角的file——new file新建一个窗口,这里可以输入完整的代 ...
- 小甲鱼零基础学python第25讲课后习题动手练习--通讯录
小甲鱼零基础学python第25讲课后习题动手练习---通讯录 **************************通讯录要求******************************* 输入指令: ...
- [零基础学python]为什么要开设本栏目
这个栏目的名称叫做"零基础学Python". 如今网上已经有不少学习python的课程.当中也不乏精品.按理说,不缺少我这个基础类型的课程了.可是,我注意到一个问题.无论是课程还是 ...
- 零基础学python》(第二版)
---恢复内容开始--- 零基础学python>(第二版) python学习手册 可以离线下载, .chn格式, 插入小幽默笑话,在学习累的时候看看笑话 放松一下 欢迎下载转载,请注明出处,谢 ...
- 零基础学python,python视频教程
零基础学python,python视频教程 这是我收集到的互联网上的视频资源,所有内容均来自互联网.仅供学习使用. 目前我在也在学习过程中,会把学习过程中遇到问题以及解决问题的方式,总结到我的公众号[ ...
- 零基础学python之函数与模块(附详细的代码和安装发布文件过程)
代码重用——函数与模块 摘要:构建函数,创建模块,安装发布文件,安装pytest和PEP 8插件,确认PEP8兼容性以及纠错 重用代码是构建一个可维护系统的关键. 代码组是Python中对块的叫法. ...
- Python学习课程零基础学Python
python学习课程,零基础Python初学者应该怎么去学习Python语言编程?python学习路线这里了解一下吧.想python学习课程?学习路线网免费下载海量python教程,上班族也能在家自学 ...
- 零基础学python之构建web应用(入门级)
构建一个web应用 前面的学习回顾: IDLE是Python内置的IDE,用来试验和执行Python代码,可以是单语句代码段,也可以是文本编辑器中的多语句程序. 四个内置数据结构:列表.字典.集合和元 ...
- 零基础学Python:数据容器
1.常用操作 列表常用操作 在 ipython 中定义一个 列表,例如: l= list() 输入 l. 按下 TAB 键, ipython 会提示 字典 能够使用的函数如下: 可以到官方网址查询使用 ...
随机推荐
- MDRT_<>$表
数据库中有好多的MDRT打头的表,而这些表的字段都是一样的,那这些表是做什么用呢? MDRT_<>$: 用来存储与空间索引相关的信息.这些表与常规表不一样,不能做复制,删除,新建等.如果对 ...
- 洛谷 P2045 方格取数加强版【费用流】
题目链接:https://www.luogu.org/problemnew/show/P2045 题目描述 给出一个n*n的矩阵,每一格有一个非负整数Aij,(Aij <= 1000)现 ...
- Kubernetes-dns 服务搭建
DNS 服务不是独立的系统服务,而是一种 addon ,作为插件来安装的,不是 kubernetes 集群必须的(但是非常推荐安装).可以把它看做运行在集群上的应用,只不过这个应用比较特殊而已. DN ...
- 1101: [POI2007]Zap
Description FGD正在破解一段密码,他需要回答很多类似的问题:对于给定的整数a,b和d,有多少正整数对x,y,满足x<=a ,y<=b,并且gcd(x,y)=d.作为FGD的同 ...
- Discuz!教程之删除注释云平台JS,加快DISCUZ访问
很多站长反应打开网站的时候有个http://discuz.gtimg.cn/cloud/scripts/discuz_tips.js?v=1一直在加载中,导致网页打开速度很慢,这个时候你可以按本文教程 ...
- java集合(类似python的列表)
一:学习方法 我们在学习一个类的时候,如果他是期其他类的实现类,我们在学习的时候,先学习他的共同的继承类,学习他们共有的方法,在学习他实现类的特殊方法.由共性--->特殊. 二:集合 1.集合和 ...
- 跳转到appstore下载app的链接 记录一下
这是链接: https://itunes.apple.com/cn/app/da-dou-dou-lao-shi/id1395835036?mt=8 其中值得一提的是mt参数是啥意思 见下图:
- HDU 6318 Swaps and Inversions 思路很巧妙!!!(转换为树状数组或者归并求解逆序数)
Swaps and Inversions Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- 认识BPM
什么是BPM BPM,即业务流程管理,是一种以规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法,常见商业管理教育如EMBA.MBA等均将BPM包含在内. BPM能干什 ...
- Msys/MinGW与Cygwin/gcc
一. MinGW MinGW 官方网站为 http://www.mingw.org/ MinGW,即 Minimalist GNU For Windows(GCC compiler suite).它是 ...