零基础学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 会提示 字典 能够使用的函数如下: 可以到官方网址查询使用 ...
随机推荐
- BZOJ 1040 骑士 基环树 树形DP
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1040 题目大意: Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫 ...
- 【CF1009F】Dominant Indices
题目 长链剖分板子题啊 长链剖分有几个神奇的性质 所有长链的总点数为\(n\) 任意一个点的\(k\)级祖先所在长链的长度肯定不小于\(k\) 从任意点到根经过的短边数量不超过\(\sqrt{n}\) ...
- pagination分页(支持首页,末页,跳转)
最近在用jq做分页,大致的效果如下: jquery.pagination.js插件说明 用法如下: 1.引入jq.jquery.pagination.js.pagination.css 2.在页面上写 ...
- highcharts柱状图实现legend和数据列一一对应效果
var cate = ['Green', 'Pink']; Highcharts.chart('container', { chart: { type: 'column' }, legend: { e ...
- JSONP - 从理论到实践
同源策略 ajax之所以需要“跨域”,罪魁祸首就是浏览器的同源策略.即,一个页面的ajax只能获取这个页面相同源或者相同域的数据. 如何叫“同源”或者“同域”呢?——协议.域名.端口号都必须相同.例如 ...
- Verilog基础知识0(`define、parameter、localparam三者的区别及举例)
1.概述 `define:作用 -> 常用于定义常量可以跨模块.跨文件; 范围 -> 整个工程; parameter: 作用 -> 常用于模块间参数传递; 范围 -> ...
- java 工作流项目源码 SSM 框架 Activiti-master springmvc 有手机端功能
即时通讯:支持好友,群组,发图片.文件,消息声音提醒,离线消息,保留聊天记录 (即时聊天功能支持手机端,详情下面有截图) 工作流模块---------------------------------- ...
- Java类是如何默认继承Object的?
原:https://juejin.im/post/5ca1e8ade51d454e6a300048 前言 学过Java的人都知道,Object是所有类的父类.但是你有没有这样的疑问,我并没有写exte ...
- 内存管理与正则(re)模块
内存管理 垃圾回收机制 不能被程序访问到的数据,就称之为垃圾 也就是失去了一个能够访问到值数据的名称空间,导致在内存中无作为 引用计数:是内存管理的原理 引用计数是用来记录值的内存地址被记录的次数 每 ...
- 洛谷P3382 【模板】三分法(三分)
题目描述 如题,给出一个N次函数,保证在范围[l,r]内存在一点x,使得[l,x]上单调增,[x,r]上单调减.试求出x的值. 输入输出格式 输入格式: 第一行一次包含一个正整数N和两个实数l.r,含 ...