零基础学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 会提示 字典 能够使用的函数如下: 可以到官方网址查询使用 ...
随机推荐
- python第二十一课——str中的常用函数(重要)
演示str中常用的一些函数: 1.join():将容器对象以某种特定的格式(字符串)进行拼接组合,最后以字符串的形式返回 lt=['i','love','you','very','much'] str ...
- Win10右键添加获取管理员权限
在win10中,还是和WIN7/8一样很多文件被设置权限我们打不开,但很多时候我们还是要打开这些文件夹的,尤其是数据恢复和电脑维护优化时.于是乎我们就有必要获取管理员权限.本人隆重退出完美解决方法. ...
- ejs引擎项目
关于这个我也很懵逼,写这篇博客就是想记录一下,有哪位大神看到之后可以略微指点一二,不胜感激....... 一.项目结构 db model user.js version.js schema xx.js ...
- 2018-2019赛季最后的随想/$\rm{NOIP2018}$游记·启示录
他看着眼前的屏幕,静静地发呆. 他不知道迎接他的将会是什么,后天的\(\rm{NOIp}\)终究是个谜. 刚刚给机房里其他人讲完期望的他,打心底觉得自己没有讲好,但效果似乎还可以. "希望别 ...
- windows服务初识
参考网址1:http://www.vchome.net/dotnet/dotnetdocs/dotnet38.htm 参考网址2:http://zhidao.baidu.com/link?url=7- ...
- 你的安全设置不允许网站使用安装在你的计算机上的ActiveX控件
在IE中,工具--INTERNET选项--安全--自定义级别--"下载未签名的ActiveX控件"选项改成"提示"或"允许"就好了.
- C#只能lock 引用类型的值 (转载)
Lock: C#只能lock 引用类型的值,如果lock一个int, bool,编译器会报错. 当一个互斥锁已被占用时,在同一线程中执行的代码仍可以获取和释放该锁.但是,在其他线程 ...
- UVa 10377 - Maze Traversal
題目:一個機器人在迷宮中行走,它的指令是方向控制(前進.左轉.右轉).給你初始位置和一些指令: 問最後停在那個位置. 分析:模擬.直接模擬就可以,注意一下細節. 假设,不能行走(邊界或者是墻壁)則停在 ...
- Ext4文件系统架构分析(一)
本文描述Ext4文件系统磁盘布局和元数据的一些分析,同样适用于Ext3和Ext2文件系统,除了它们不支持的Ext4的特性外.整个分析分两篇博文,分别概述布局和详细介绍各个布局的数据结构及组织寻址方式等 ...
- 2.高并发教程-基础篇-之nginx+mysql实现负载均衡和读写分离
技巧提示:mysql读写分离搭建好之后,配合nginx的负载均衡,可以高效的mysql的集群性能,同时免去麻烦的query分流.比如,sever1收到的请求就专门链接slave1从mysql读取数据, ...