《大数据技术基础》全套教学课件_第1页
《大数据技术基础》全套教学课件_第2页
《大数据技术基础》全套教学课件_第3页
《大数据技术基础》全套教学课件_第4页
《大数据技术基础》全套教学课件_第5页
已阅读5页,还剩552页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模块一初识大数据《大数据技术基础》模块1初识大数据.pptx模块2搭建开发环境.pptx模块3Python语言基础.pptx模块4大数据集采集技术.pptx模块5大数据预处理技术.pptx模块6大数据分析技术.pptx模块7大数据可视化.pptx全套可编辑PPT课件目录模块一初识大数据任务一揭开大数据的神秘面纱 任务二追溯大数据的来源任务三探究大数据的特征及意义全套可编辑PPT课件任务一揭开大数据的神秘面纱全套可编辑PPT课件任务导入2022年“双十一”全网交易额超万亿:天猫占据销额榜首。天猫双十一期间,智能电玩、户外用品、猫狗宠物商品、适老家具等行业同比增长超过20%,面膜冷热仪、低碳清洗机、内衣洗衣机等148个细分趋势品类,同比增长超100%。天猫平台网站,从点击量、浏览历史和行为(如放入购物车)中实时发现顾客的即时购买意图和兴趣,并据此推送商品。天猫平台通过对大数据进行分析,能够准确把握单品的销售排名,消费者的年龄结构、甚至是个人的喜好,促成了平台交易额的不断上升,产生了巨大的经济效益。那么,天猫平台给出的大数据分析结果,如各行业销售同比分析,是使用了整个天猫平台网站所有用户的信息,还是部分用户的信息得到的?本任务从认识大数据开始,首先了解大数据的概念,然后辨析大数据和传统数据之间的区别,最后,得出结论。任务一揭开大数据的神秘面纱任务目标1.能够说出大数据的概念。2.能够辨析大数据和传统数据之间的区别。3.能够产生对大数据技术的学习兴趣、理解创新驱动发展理念。任务一揭开大数据的神秘面纱任务分析通过网络、微课等多方面的学习资源,自主查询大数据相关的定义,了解大数据的发展历史、大数据的应用、大数据的优势等知识,对大数据有较多的认识。基于对大数据概念的理解,通过小组合作的方式,针对大数据案例,进一步挖掘大数据的特点,讨论总结出大数据与传统数据之间的区别。根据大数据和传统数据之间的区别,得出大数据的数据范围,进而判断天猫平台给出的大数据分析结果,如各行业销售同比分析,是使用了整个天猫平台网站所有用户的信息,还是部分用户的信息得到的。123任务一揭开大数据的神秘面纱任务实施Gartner大数据是需要新处理模式,才能具有更强的决策力、洞察发现力和流程优化能力,来适应海量、高增长率和多样化的信息资产。McKinseyApacheHadoop大数据是指其大小超出了典型数据库软件的采集、存储、管理和分析等能力的数据集。大数据是指普通的计算机软件无法在可接受的时间范围内捕捉、管理、处理的规模庞大的数据集。1.大数据的概念任务一揭开大数据的神秘面纱任务实施2.大数据与传统数据数据规模不同传统数据规模相对较小大数据的数据量非常大数据类型不同传统数据多为结构化数据大数据多为非结构化数据处理方式不同传统数据通过采样的方式,选取部分数据进行处理。大数据注重整体数据的处理,而不进行数据的采样。任务一揭开大数据的神秘面纱任务实施天猫平台给出的大数据,是对所有在天猫平台注册的所有用户信息进行统计的结果,既有用户的个人信息,如年龄、订单、购物车信息,也有商品的分类、出单情况。因此,天猫平台给出的大数据分析结果,使用了整个天猫平台网站所有用户的信息。3.得出结论任务一揭开大数据的神秘面纱知识链接计算计算速度是非常关键的因素。为了提高计算速度,分布式系统基础架构Hadoop诞生了;MapReduce则为海量的数据提供了并行计算;Spark、Storm、Impala等各种各样的技术进入人们的视野。存储云计算使得网站的建设投入减少,就像使用水电一样,按量计费,不使用就不产生费用,不使用也不会浪费资源,有效促进了存储成本的下降。智能机器拥有理解数据的能力,在很多领域已经成功展示其优越性。例如:谷歌AlphaGo大胜世界围棋冠军李世石。大数据的支撑技术任务一揭开大数据的神秘面纱知识拓展KBMBGBTBPBEBZB目前,大数据的范围从TB级发展到PB级。数据在计算机中存储的最小单位是bit,按从小到大的顺序还包括的单位有:Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。它们按照进率1024(2的10次方)来计算:1Byte=8bit,1KB=1,024Bytes,1MB=1,024KB,1GB=1,024MB,1TB=1,024GB,1PB=1,024TB,1EB=1,024PB,1ZB=1,024EB,1YB=1,024ZB,1BB=1,024YB,1NB=1,024BB,1DB=1,024NB。任务一揭开大数据的神秘面纱任务二追溯大数据的来源任务导入2022年冬奥会在中国举办,有哪些比赛事项是大家最为关注的呢?你可以到百度热搜的冬奥大数据中寻找答案,如图1-2所示。百度热搜以数亿用户海量的真实大数据为基础,通过专业的数据挖掘方法,计算关键词的热搜指数,旨在建立权威、全面、热门、时效的各类关键词排行榜,引领热词阅读时代。百度热搜,是当前互联网乃至整个大数据时代最重要的统计分析平台之一,自发布之日便成为众多企业营销决策的重要依据。这些大数据能够告诉用户:某个关键词在百度的搜索规模有多大,一段时间内的涨跌态势以及相关的新闻舆论变化,关注这些词的网民是什么样的,分布在哪里,同时还搜了哪些相关的词,帮助用户优化数字营销活动方案。结合实际生活,请你思考一下,百度热搜统计出的冬奥大数据的来源都有哪些呢?任务二追溯大数据的来源任务目标1.能够归纳总结大数据的来源。2.能够通过不同的方式对大数据来源进行分类。3.能够积极参与冰雪运动,发扬奥运拼搏精神。任务二追溯大数据的来源任务分析通过网络、微课等多方面的学习资源,自主查询大数据相关的来源,进行归纳总结。基于对大数据来源的归纳,通过小组合作的方式,进一步对大数据的来源进行分类,能够从多方面多角度分类。针对大数据案例,根据大数据来源的分类,得出百度热搜统计出的冬奥大数据的来源都有哪些。123任务二追溯大数据的来源任务实施任务二追溯大数据的来源1.大数据的来源互联网用户通过网络所留下的痕迹(包括浏览信息、行动和行为信息)互联网公司在日常运营中生成、累积的用户网络行为数据任务实施任务二追溯大数据的来源1.大数据的来源传统行业电信银行金融任务实施2.大数据的分类企业关系型数据库数据仓库人推特微博机器服务器传感器主体任务二追溯大数据的来源任务实施以BAT为代表的互联网公司电信、金融、保险、电力、石化系统公共安全、医疗、交通领域气象、地理、政务等领域制造业和其他传统行业任务二追溯大数据的来源行业2.大数据的分类任务实施2.大数据的分类企业关系型数据库数据仓库人推特微博机器服务器传感器主体任务二追溯大数据的来源任务实施2.大数据的分类数据存储形式任务二追溯大数据的来源结构化数据财务系统医疗数据库教育一卡通非结构化数据办公文档图片视频任务实施2.大数据的分类大数据获取途径任务二追溯大数据的来源系统日志采集互联网数据采集APP移动端数据采集与数据服务机构进行合作1234任务实施从大数据产生的主体来看,百度热搜统计出的冬奥大数据的来源主要是人;按数据来源的行业划分,百度热搜统计出的冬奥大数据的来源主要是互联网;按数据存储的形式划分,百度热搜统计出的冬奥大数据的来源主要是非结构化数据;按大数据获取途径划分,百度热搜统计出的冬奥大数据的来源主要是系统日志采集。任务二追溯大数据的来源3.得出结论知识链接任务二追溯大数据的来源音频、视频和数据是我们最容易忽视的数据来源,而这些恰恰才是真正大数据的来源,分析、挖掘这些数据可能引发更大的资源与信息。实时跟踪器之前的运用仅限于价值高昂的航天飞机以及气象预测,现在也应用于汽车方面,即汽车生产商在车辆中配置监控器,如GPRS、油耗器、速度表、公里表等可传播信号的监控器。可以连续读取车辆机械系统整体的运行情况。现在,移动可穿戴设备的广泛使用,使得企业可以提取出非常有用的数据从而获取价值。这一类数据可能产生的业务不多。但可以推动某些经营模式发生实质性的变革。例如,汽车传感数据可用于评价司机行为从而推动汽车保险业的巨大变革,以及汽车的节能减排可推动环境改善的变革。知识拓展任务二追溯大数据的来源大数据的表现形态大数据的多源性大数据的实时性大数据的不确定性任务三探究大数据的特征及意义任务导入下图为“百度迁徙”统计的春节前后全国总体迁徙趋势图,从时间上看,2020年春节前,没有官宣新冠病毒,此时的人口流动数据和2019年相对持平,2020年春节后,由于新冠疫情,人口流动相对于2019年大幅降低。2021年春节后,由于疫情控制较好,人口流动相对于2020年有了较大提升。2022年春节前后,相较于2021年,人口流动都有所提升。“百度迁徙”利用百度地图LBS(基于地理位置的服务)开放平台、百度天眼、互联网、第三方等提供的多种数据,进行计算分析,并采用创新的可视化呈现方式,在业界首次实现了全程、动态、即时、直观地展现中国春节前后人口大迁徙的轨迹与特征。“百度迁徙”为政府掌握人口流动走向和疫情布控发挥了重要作用,体现了大数据的价值性,那么,从这一案例中,你还能发现大数据有哪些特征呢?任务三探究大数据的特征及意义任务目标1.能够归纳大数据的特征。2.能够说出大数据的意义。3.能够发扬抗疫精神,科学共建平安中国。任务三探究大数据的特征及意义任务分析通过网络、微课、教材等多方面的学习资源,自主查询大数据特征的认识,进行归纳总结。基于大数据的特征,分析大数据的意义。根据大数据的特征和意义,结合给出的案例,得到案例中体现出的大数据的特征。123任务三探究大数据的特征及意义任务实施任务三探究大数据的特征及意义1.大数据的特征数据的大小数据的处理速度SizeSpeed数据的结构Structure“3S”特征任务实施任务三探究大数据的特征及意义1.大数据的特征“4V”特征第一个“V”是指Value价值高,大数据有巨大的潜在价值,和大数据几何指数爆发式增长相比,某一对象或模块数据的价值密度较低,这给我们开发海量数据增加了难度和成本。第二个“V”是指Volume体量大,从2013年至2020年,人类的数据规模扩大50倍,每年产生的数据量增长到44万亿GB,且每18个月翻一番。第三个“V”是指Velocity速度快,随着现代感测、互联网、计算机技术的发展,数据生成、储存、分析、处理的速度远远超出人们的想象力,这是大数据区别于传统数据或小数据的显著特征。第四个“V”是指Variety种类多,大数据与传统数据相比,数据来源广、维度多、类型杂,各种机器仪表在自动产生数据的同时,人自身的生活行为也在不断创造数据;不仅有企业组织内部的业务数据,还有海量相关的外部数据。任务实施任务三探究大数据的特征及意义2.大数据的意义意义(1)有数据可说,在大数据时代,“万物皆数”,“量化一切”,“一切都将被数据化”。大数据把疫情的发展数字化,更清楚地描述出疫情的控制过程,让我们坚定了必胜的信息。(2)说数据可靠,大数据中的“数据”真实可靠,它实质上是表征事物现象的一种符号语言的逻辑关系,这意味着任何事物的属性和规律,只要通过适当编码,均可以通过统一的数字信号表达出来。将疫情数字化、将民众需求数字化、出行轨迹数字化,更能准确反映问题,有效促进问题的解决。任务实施从“3S”特征来看,“百度迁徙”利用了百度地图LBS(基于地理位置的服务)开放平台、百度天眼、互联网大数据、第三方大数据等多个来源的数据,体现了大数据的数据量大的特征;“百度迁徙”可以全程、动态、即时、直观地展现中国春节前后人口大迁徙的轨迹与特征,具有很高的时效性,体现了大数据处理分析速度快的特征;“百度迁徙”可以利用多个平台的多种数据,如图像、图表、语音、地理位置等大数据信息,体现了大数据结构复杂的特征。3S与除此之外,“百度迁徙”可以为政府掌握人口流动走向和疫情布控发挥重要作用,体现了大数据的价值性。任务三探究大数据的特征及意义3.得出结论知识链接任务三探究大数据的特征及意义数量(Volume)指大数据巨大的数据量与数据完整性。数量的单位从TB级别跃升到PB级别甚至ZB级别。据有关学者了解,天文学和基因学是最早产生大数据变革的领域,2000年,斯隆数字巡天项目启动时,位于新墨西哥州的望远镜,在短短几周内搜集到的数据已经比天文学历史上总共搜集的数据还要多:在智利的大型视场全景巡天望远镜投入使用后,其在5天之内搜集到的信息量将相当于前者10年的信息档案。伴随着各种随身设备以及物联网、云计算、云存储等技术的发展,人和物的所有轨迹都可以被记录,数据因此被大量生产出来。知识链接任务三探究大数据的特征及意义多样性(Variety)即数据类型繁多。随着传感器、智能设备以及社交协作技术的飞速发展,数据也变得更加复杂,因为它不仅包含传统的关系型数据,还包含来自网页、互联网日志文件(包括点击流数据)、视频、图片、地理信息、搜索索引、社交媒体论坛、电子邮件、文档、主动和被动系统的传感器数据等原始、半结构化和非结构化数据。发掘这些形态各异、快慢不一的数据流之间的相关性,是大数据做前人之未做、能前人所不能的机会。大数据技术不仅是处理巨量数据的利器,更为处理不同来源、不同格式的多元化数据提供了可能。知识链接任务三探究大数据的特征及意义速度(Velocity)即处理速度快。目前,对于数据智能化和实时性的要求越来越高,比如开车时会查看智能导航仪查询最短路线可即时给出,吃饭时会了解其他用户对这家餐厅的评价可即时上网查询,见到可口的食物会拍照即时发微博等诸如此类的人与人、人与机器之间的信息交流互动,这些都不可避免带来数据交换。而数据交换的关键是降低延迟,以近乎实时的方式呈献给用户。知识链接任务三探究大数据的特征及意义价值(Value)即追求高质量的数据。大数据时代数据的价值就像大浪淘金,数据量越大,里面真正有价值的东西就越少。现在的任务就是将这些的数据,利用云计算、智能化开源实现平台等技术,提取出有价值的信息将信息转化为知识,发现规律,最终用知识促成正确的决策和行动。追求高质量的数据是一项重要的大数据要求和挑战,即使最优秀的数据清理方法也无法消除某些数据固有的不可预测性。例如人的感情和诚实性、天气形式、经济因素以及其他因素。知识拓展任务三探究大数据的特征及意义“3I”特征ill-defined(定义不明确的)intimidating(令人生畏的)immediate(即时的)感谢您的聆听模块二

搭建开发环境《大数据技术基础》目录模块二搭建开发环境任务一初识PyCharm

任务二安装PyCharm任务一

初识PyCharm任务导入在快速发展的信息时代,编程语言为人们提供了诸多便利。其中,Python成为人们使用较多的“网红”语言。在使用Python语言之前,安装对应的开发环境是必不可少的。IDLE是Python自带的开发环境。虽然Python自带开发环境,但是一般不经常使用。其原因有以下两点:首先,IDLE没有提示功能;其次,如果遇到需要打开多个文件进行操作时,使用IDLE开发环境会影响代码正确性,降低工作效率。所以,通常选择第三方Python开发环境。第三方开发环境有PyCharm、Spyder和VSCode等,一般来说,PyCharm是大多数人选择的软件。本任务从认识PyCharm开始,了解PyCharm软件的功能,总结PyCharm的优点。

任务一初识PyCharm任务目标1.能够说出PyCharm软件的功能。2.能够辨析PyCharm与其他软件的区别,掌握PyCharm的优点。3.能够具有积极思考、主动探索、解决问题的意识。任务一初识PyCharm任务分析123任务一初识PyCharm通过互联网、手机、书本、微课等多方面的工具去搜索关于PyCharm软件的资料,了解PyCharm软件功能和其发展历程,加深对PyCharm的认识。基于对PyCharm的认识,通过小组讨论、合作探究的方式,找出PyCharm和其他软件的区别,并总结出PyCharm的优点。12任务实施PyCharm是一款Python集成开发环境(IDE,IntegratedDevelopmentEnvironment)。它集成了开发软件所需要的工具,包括:图形用户界面、代码编译器、解释器、调试器等。此外,PyCharm除了具有一般IDE所必备的功能外,它的兼容性也很高,支持Windows、Linux、macOS等操作系统使用。1.PyCharm的功能任务一初识PyCharm任务实施相比于Python自带的IDLE开发环境,PyCharm不仅界面更加美观,而且还可以在编写代码的过程中进行智能提示,这样更加方便开发人员进行编写代码和修正错误。与其他Python第三方开发环境相比,PyCharm的内部集成度较高,集成了很多实用性功能,比如:语法高亮显示、代码调试、解释代码(自带一个解释器)、自带框架和库、智能提示以及项目管理。Pycharm通过项目管理功能,可以满足大型项目开发需求。2.PyCharm的优点任务一初识PyCharm任务实施PyCharm是一种PythonIDE,带有属于自己的一套工具,可以帮助开发者提高工作效率。与此同时,对于初学者来说,更容易学习和实际操作。3.得出结论任务一初识PyCharm知识链接PyCharm界面主要包含四个分区,分别为菜单栏、项目管理区、代码编辑区、结果区。任务一初识PyCharmPyCharm界面介绍知识链接(1)菜单栏:主要是对PyCharm以及项目文件的一些功能操作,比如运行文件和打开文件等。(2)项目管理区:显示项目文件和库文件(包括第三方库和标准库文件),在此区域管理项目文件和库文件,比如对项目进行编辑、删除和新增等操作。(3)代码编辑区:用于编辑和修改代码。(4)结果区:用于显示程序运行结果和报错信息,类似于电脑的显示器用于展示信息。PyCharm界面介绍知识链接IDLE是Python自带的开发环境,在安装好Python后,通过开始菜单找到Python下的IDLE,点击即可启动IDLE。启动IDLE之后,就可以进行Python代码编写等操作。任务一初识PyCharmIDLE介绍知识拓展除了PyCharm,Spyder也是Python的第三方集成环境。Spyder可以实现Python代码中变量的可视化,同时加入了图形界面。Spyder分为工作区、命令行以及可视化窗口。Spyder是一个强大的科学环境,由科学家、工程师和数据分析师设计,对于初学者来说,Spyder也是一个很好的Python学习工具。任务一初识PyCharm任务二

安装PyCharm任务导入本学期学校将要开设Python课程,张红同学对Python的集成开发环境PyCharm软件十分感兴趣,想要提前尝试安装PyCharm软件。本任务是掌握PyCharm的安装流程。

任务二安装PyCharm任务目标1.能完成PyCharm的下载。2.能完成PyCharm的安装。3.能够发扬执着专注、科学严谨、追求卓越的工匠精神。

任务二安装PyCharm任务分析123

任务二安装PyCharm123通过互联网、手机、书本等多种工具搜索关于PyCharm软件安装的资料,了解PyCharm安装的流程。基于对PyCharm流程的学习,通过小组讨论、合作探究的方式,安装PyCharm软件。12任务实施在浏览器中进行搜索,找到PyCharm的官网,下载PyCharm。具体步骤如下:(1)打开PyCharm官网,进入PyCharm下载界面,参照下图的步骤,即可完成PyCharm软件的下载。Professional表示专业版,Community是社区版。专业版功能更加强大,面向专业的企业项目开发者。而社区版用于Python编程和数据分析,面向编程爱好者和学习者。在这里推荐安装社区版,可以免费使用,而且能够满足学习的需求。1.PyCharm下载

任务二安装PyCharm任务实施(2)下载PyCharm社区版安装包,将安装包保存到本地1.PyCharm下载

任务二安装PyCharm任务实施(1)打开PyCharm安装包,点击Next按钮进行安装。2.PyCharm安装

任务二安装PyCharm任务实施(2)设置合理的安装路径。PyCharm默认的安装路径是在C盘,在这里建议更改。笔者选择的是D盘。

任务二安装PyCharm2.PyCharm安装任务实施(3)设置PyCharm的功能选择。步骤一:创建PyCharm对应的快捷方式(CreateDesktopShortcut),勾选对应的复选框。步骤二:更新右键菜单,将PyCharm添加到鼠标的右键菜单(UpdateContextMenu),勾选对应的复选框。步骤三:更新路径(UpdatePATHVariable),勾选对应的复选框,将PyCharm的启动目录添加到环境变量中。步骤四:设置关联文件(CreateAssociations),勾选对应的复选框,这样与PyCharm软件相关联的文件格式是.py文件。当打开对应的.py文件时,系统会默认调用PyCharm打开。功能选择如右图所示。设置完成之后,点击Next按钮。

任务二安装PyCharm2.PyCharm安装任务实施(4)点击Next按钮之后,进入选择开始菜单文件夹界面(ChooseStartMenuFolder)。在该界面无需做任何设置,直接点击Install按钮即可,如右图所示

任务二安装PyCharm2.PyCharm安装任务实施(5)安装完成后,可以选择立即重启(Rebootnow)或者是稍后重启(Iwanttomanuallyrebootlater),最后点击Finish按钮即可,如右图所示

任务二安装PyCharm2.PyCharm安装任务实施(6)安装完成后,桌面会出现PyCharm快捷方式的图标,如下图所示

任务二安装PyCharm2.PyCharm安装知识链接在使用PyCharm之前,如果电脑没有下载Python解释器,PyCharm只是一副没有灵魂的躯壳。所以下载完PyCharm之后,还需要下载Python。1.进入Python官网(1)进入Python官方网站,点击Downloads按钮,根据自己的操作系统选择合适的版本。(2)下载Python点击Windows按钮之后,将显示和下载有关的菜单项。每一个版本里面都有不同的下载文件,带有“x86”字样表示该开发工具可以在Windows32位系统上使用;带有“x86-64”字样表示该开发工具可以在Windows64位系统上使用;“executableinstaller”表示可执行版,需要安装后使用;“embeddablezipfile”表示嵌入版,表示解压以后直接使用;“web-basedinstaller”表示需要进行连网完成安装。(3)安装PythonPython安装较为简单,和安装PyCharm一样,也需要选择合适的路径。路径选择完成后,直接点击Install按钮进行安装,这里不再赘述。

任务二安装PyCharm知识拓展安装完Python之后,需要检测一下Python是否可以正常使用。比如在Windows10系统上,在搜索框中输入cmd命令,打开命令提示符,在该窗口输入“Python”,按下Enter键,如果出现如下图所示的信息,表示安装成功。

任务二安装PyCharm知识拓展如果没有出现上图所示的信息,就说明在当前路径下没有找到Python.exe可执行文件。遇到这种情况,需要右击我的电脑,点击属性,切换到高级系统设置,点击环境变量,找到变量里面的Path,进行编辑。具体操作:将Python解释器所在路径粘贴到最后面,再加个分号就可以了。

任务二安装PyCharm感谢您的聆听模块三Python语言基础《大数据技术基础》目录模块三Python语言基础任务一初识Python语言 任务二定义和操作Python数据结构任务三Python流程控制语句任务四Python函数与应用任务一初识Python语言任务导入任务一初识Python语言中国经济一直处在不断的变化中,从2021年公布的经济数据显示,2021年中国GDP总量排名前十的地区分别为:广东、江苏、山东、浙江、河南、四川、湖北、福建、湖南、上海。其中,广东省GDP总量位居第一,同比增长8%,成为中国首个GDP突破12万亿元的省份。2021年中国各省市GDP总量排行榜前10名如表3-1所示。表3-12021年中国各省市GDP总量排行榜前10名排名省(市)2021年GDP总量(亿元)增速(%)1广东124369.678%2江苏116364.208.6%3山东83095.908.3%4浙江73516.008.5%5河南58887.416.3%6四川53850.798.2%7湖北50012.9412.9%8福建48810.008%9湖南45800.007.8%10上海43214.858.1%本任务设计程序实现如下功能:通过键盘输入2021年各省市GDP总量排行榜前5名的GDP信息,并计算前5名省市GDP总和及平均值。任务目标1.能正确运用Python语法知识。2.会使用Python运算符。3.能使用input()函数和print()函数输入和输出信息。4.树立科技是第一生产力,以科技促进经济发展的理念。任务一初识Python语言任务分析任务一初识Python语言123通过学习微课,完成任务。选择使用Python内置函数input()接收用户通过键盘输入的2021年各省市GDP总量排行榜前5名的GDP信息,并定义变量分别保存输入的GDP信息使用基本运算符计算前5名省市GDP总和及平均值使用Python内置函数print()输出相应结果任务实施1.定义变量任务一初识Python语言定义5个变量output_gd、output_js、output_sd、output_zj、output_hn分别用来存储从键盘输入的2021年前5名省市GDP总量值,使用input()函数接收用户的键盘输入。任务实施2.类型转换任务一初识Python语言使用str()函数将5个变量值强制转换为字符串类型,然后利用print()函数输出结果。任务实施3.计算结果并输出任务一初识Python语言计算前5名省市GDP总和以及平均值,并定义变量output_sum来保存GDP总和及output_ave来保存GDP平均值。任务实施4.输出结果任务一初识Python语言知识链接1.Python语法特点任务一初识Python语言(1)注释在程序设计中,经常对代码添加注释,主要目的是便于程序设计人员对程序进行维护。注释的内容将被Python解释器忽略,不会显示在执行结果中。Python语言主要提供了两种注释方法,分别为:单行注释和多行注释。①单行注释单行注释通常以“#”号开头,在“#”号后面书写注释内容。单行注释可以放在要注释代码的前一行或者放在要注释代码行的行末。语法格式如下:知识链接1.Python语法特点任务一初识Python语言②多行注释在实际的程序设计中常常需要多行注释,多行注释有以下两种方法。a.每一行前均添加“#”号。b.使用三个单引号或者三个双引号将注释内容括起来。语法格式如右图所示:知识链接1.Python语法特点任务一初识Python语言(2)代码缩进Python语言最具特色的就是用缩进的方式来标识代码块,而不是使用大括号({})来控制代码块。同一个代码块中的语句必须保证相同的缩进空格数,否则程序会报错。Python是一种缩进敏感的语言,程序员需要小心检查缩进量,一般选择使用4个空格作为一个缩进单位,也可以用一个“Tab”表示一个缩进单位,当然这个缩进量可以自主设置。需要注意的是,在设置缩进空格时,不要将[Space]键和[Tab]键混用,以免导致设置的空格数不一致。(3)编码规范在Python3.X版本的源代码中,字符默认使用的是UTF-8编码。知识链接2.标识符与关键字任务一初识Python语言(1)标识符Python标识符是在程序设计中用于标识变量、函数、类、模块和其他对象的名称。标识符的命名必须符合一定的规范,具体如下①标识符可以由字母(A-Z和a-z)、下划线和数字组成;②标识符的第一个字符不能是数字;③标识符不能与Python关键字具有相同名称,名称相同会引发错误;④标识符对大小写敏感。知识链接2.标识符与关键字任务一初识Python语言(2)关键字关键字是Python语言中一些已经被赋予特定意义的标识符。开发程序时,要注意不能把这些关键字作为自定义的标识符。Python语言中的关键字如表3-2所示。表3-2Python中的关键字andasassertbreakclasscontinuedefdefelifelseexceptfinallyforfromFalseglobalifimportinislambdanonlocalnotNoneorpassraisereturntryTruewhilewithyield

知识链接2.标识符与关键字任务一初识Python语言(3)变量在Python中,不需要先声明变量,直接赋值即可创建各种类型的变量。但是变量的命名并不是任意的,需要遵循一定的规则。①变量名必须是一个有效的标识符;②变量名不能使用Python中的关键字;③尽量选择有意义的单词作为变量名。(4)数值类型Python中数值类型主要包括以下四类:整型(int),浮点型(float),布尔类型(bool),复数类型(complex)。知识链接2.标识符与关键字任务一初识Python语言①整数类型(int)在C语言中,int表示整数,而在Python语言中,int是一个类,也就是整数类。Python语言的整数类可以表示任意大小的整数,整数类变量接受四种进制形式,即二进制、八进制、十进制和十六进制形式。通过函数str()、oct()、hex()和bin()函数可以把整数数值转换为十进制、八进制、十六进制和二进制的字符串。通过函数int()可以把十进制、八进制、十六进制和二进制的字符串转换为整数数值。②浮点型(float)在Python中,浮点型(float)是一个类。简单说,浮点型就是我们平常说的小数。浮点型有两种表示法,一种是常规的数学表示法,如12345.789,还有一种是科学计数法,如1.2345789e4。Python的浮点数默认是双精度类型。知识链接2.标识符与关键字任务一初识Python语言③布尔类型(bool)布尔类型本质上是整数类的一个子类,主要用来表示真值(True)和假值(False)。注意用英文表示时两个值的第一个字母需要大写。④复数类型(complex)与数学上定义的复数一样,Python语言中的复数类型也包括实部和虚部。需要注意的是,在数学中,虚数单位是i,但是在Python语言中,虚数单位是j,比如1+2j,其中1为实部,2j为虚部。复数的创建方法有两种:一种是直接从键盘键入复数,如1+2j,一种是用complex()函数创建,如1+2j可以写为complex(1,2)或complex('1+2j')。知识链接2.标识符与关键字任务一初识Python语言(5)运算符Python语言的运算符主要包括算数运算符、赋值运算符、比较(关系)运算符、逻辑运算符和位运算符。①算数运算符算数运算符就是用来完成四则运算的符号,如加减乘除等,主要运算符如表3-3所示。

表3-3算数运算符知识链接2.标识符与关键字任务一初识Python语言②赋值运算符赋值运算符是由算数运算符与“=”结合在一起形成的。在Python中常用的赋值运算符如表3-4所示。

表3-4常用的赋值运算符知识链接2.标识符与关键字任务一初识Python语言③比较(关系)运算符比较运算符,也称为关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果比较结果为真,则返回True,如果比较结果为假,则返回False。比较运算符通常用在条件语句中作为判断的依据。在Python中,比较运算符如表3-5所示。表3-5比较运算符知识链接2.标识符与关键字任务一初识Python语言④逻辑运算符逻辑运算符是用来对真和假两种布尔值进行运算的,运算后的结果仍是一个布尔值。在Python中,逻辑运算符主要包括逻辑与(and)、逻辑或(or)和逻辑非(not),如表3-6所示。

表3-6逻辑运算符知识链接2.标识符与关键字任务一初识Python语言⑤位运算符位运算符是把数字看作二进制数进行计算。在运算时,首先需要将数据转换成二进制数再进行位运算。在Python中,位运算符包括位与(&)、位或(∣)、位异或(^),位取反(~)、左移位(<<)和右移位(>>)运算符。a.位与运算位与运算的运算法则为:两个操作数据的二进制表示,只有对应数位都为1时,结果数位才是1,否则为0。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同,如图3-2所示是12&8的运算过程。知识链接2.标识符与关键字任务一初识Python语言b.位或运算位或运算的运算法则是:两个操作数据的二进制表示,只有对应数位都是0,结果数位才是0,否则为1。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同,如图3-3所示是4|8的运算过程。知识链接2.标识符与关键字任务一初识Python语言c.位异或运算位异或运算的运算法则是:两个操作数据的二进制表示,如果对应数位同时为0或者同时为1时,结果数位为0,否则为1。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同,如图3-4所示是30^8的运算过程。知识链接2.标识符与关键字任务一初识Python语言d.位取反位取反的运算法则是:将操作数对应的二进制数1改为0,0改为1,如图3-5所示是~203的运算过程。e.左移位运算左移位运算是将一个二进制操作数向左移动指定的位数,左边(高位端)溢出的位被丢弃,右边(低位端)的空位用0补充。左移位运算相当于乘以2的n次幂。例如,求将十进制数48向左移1位得到的十进制数的具体过程如图3-6所示。图3-6左移位运算过程知识链接2.标识符与关键字任务一初识Python语言f.右移位运算右移位运算是将一个二进制操作数向右移动指定的位数,右边(低位端)溢出的位将丢弃,而在填充左边(高位端)的空位时,如果最高位是0(正数),左侧空位用0补充;如果最高位是1(负数),左侧空位用1补充。右移位运算相当于除以2的n次幂。例如,正数48右移1位得到的正数的具体运算过程如图3-7所示。例如,负数-80右移2位得到的负数的具体运算过程如图3-8所示。知识链接2.标识符与关键字任务一初识Python语言(6)基本输入和输出基本输入和输出是指从键盘上输入字符,然后再屏幕上显示。Python中提供了input()函数和print()函数分别作为输入函数和输出函数。在Python中使用内置函数input()可以接收用户的键盘输入。input()函数的基本用法如下:a=input("请输入文字:")在Python中,input()函数把用户的键盘输入作为字符串(一种数据类型)返回。如果输入的是数字,需要用int()、float()等函数将字符串转换为相应的数值类型,常用的转换函数如表3-7所示。

表3-7转换函数知识拓展任务一初识Python语言默认情况下,print()函数格式为print(value)。由于最适合人阅读的信息是字符串,所以通常将Python中的value对象格式化为字符串,再输出。从Python2.6版本开始,字符串类(str)提供了str.format(*args,**kwargs)方法对字符串进行格式化,由此Python的print()函数获得了更加优雅的Pythonic格式化输出方法。用“help(str.format)”查询字符串类(str)提供的str.format(*args,**kwargs)方法的用法:help(str.format)结果为:图3-9str.format()的使用方法描述知识拓展任务一初识Python语言从运行结果可以看到,“S.format”方法会返回一个格式化良好的字符串,“S”字符串中有占位符“{}”的地方,会根据格式化参数进行替换,如下所示。代码:"height:{0:5d}mm,width:{1:5.2f}mm".format(25,47.789)运行结果:'height:25mm,width:47.79mm'代码:"height:{}mm,width:{}mm".format(25,47.789)运行结果:'height:25mm,width:47.789mm'知识拓展任务一初识Python语言S字符串:“height:{0:5d}mm,width:{1:5.2f}mm”可以认为是一个由常规字符和占位字符{}组成的模板字符串。在输出时,大括号{}外面的字符原样输出,不能改变,大括号{}里面是格式化参数,其语法格式为:[索引]:[标志][宽度][.精度][转换符]。其中冒号“:”左边的索引值对应format()方法中的参数位置,例如,“0”对应format()方法中的第一个参数,{1}对应format()方法中的第二个参数,以此类推;所以也可以用变量名,与format()方法中输入参数变量名对应;还可以省略,表示按照format()方法中输入参数顺序,依次对应。如下所示,冒号“:”左边是索引值。代码:"height:{0:5d}mm,width:{1:5.2f}mm".format(25,47.789)运行结果:'height:25mm,width:47.79mm'代码:"height:{a:5d}mm,width:{b:5.2f}mm".format(a=25,b=47.789)运行结果:'height:25mm,width:47.79mm'知识拓展任务一初识Python语言冒号“:”右边是格式化参数,语法格式为:[标志][宽度][.精度][转换符],下面将一一介绍。标志的用法如表3-8所示。知识拓展任务一初识Python语言宽度指转换后的字符串占多少个字符位宽。精度指转换后的字符串保留多少位小数,例如,“5.2f”中的5代表转换后的字符串占5个字符位宽,2代表保留两位小数。转换符的用法如表3-9所示。知识拓展任务一初识Python语言Python3.6版本及后续版本还提供了一个f字符串来实现字符串格式化。f字符串具有可读性更好、更加简洁且执行速度更快的优点。f字符串的语法非常简单,在字符串前面加入一个前缀f,然后用大括号{}表示替换的对象,如下面代码所示。代码:name='Lily'age=56f"Hello,{name}.Areyou{age}?"运行结果:'Hello,Lily.Areyou56?'任务二定义和操作Python数据结构子任务1定义和操作字符串任务导入子任务1定义和操作字符串张红同学在网上收集了一些城市的宣传口号,这些内容组成了一个字符串:“中国城市宣传口号大全(1)@东方古都,长城故乡。(2)@上海,精彩每一天。(3)@世界的重庆,永远的三峡。(4)@一日读懂两千年。(5)@塞上明珠,中国银川。(6)@多情山水,天下洲城。(7)@桂林山水甲天下。(8)@浪漫之都,中国大连。(9)@海上花园,温馨厦门。(10)@天涯芳草,海角明珠。”以上字符串中一共包含了10个城市的信息。现张红已获取字符串中编号和对应的城市信息,如表3-10所示。本任务设计程序实现如下功能:对字符串进行截取、分割和拼接操作,并结合表3-10,显示出表中每个城市对应的宣传口号。任务目标子任务1定义和操作字符串1.能说出字符串的定义。2.能使用字符串的相关操作完成任务。3.能够树立人与自然和谐共生的中国式现代化发展理念。任务分析1子任务1定义和操作字符串通过学习微课,完成任务。首先使用字符串的分割操作对长字符串进行切割,然后使用字符串合并拼接等操作实现按行显示每个城市对应的宣传口号。任务实施子任务1定义和操作字符串1.定义变量定义三个列表list_new、list_ad、list_name分别存储定义拼接后新的宣传口号、具体口号和城市名称信息。任务实施子任务1定义和操作字符串2.获得初始口号列表通过字符串的截取、分割操作,得到初始口号列表list_adS。任务实施3.实现字符串拼接操作并截取每个口号文字子任务1定义和操作字符串使用for循环,实现两个list_name和list_ad两个列表中所有字符串元素的拼接操作。遍历list_adS,截取口号文字,存储在list_ad中;给每个口号加上“。”号,然后输出每个城市的正确宣传口号。任务实施子任务1定义和操作字符串4.输出结果知识链接子任务1定义和操作字符串字符串是所有编程语言在项目开发过程中涉及最多的一个内容。字符串用于表示、存储、操作一串字符。除了数值类型是一种数据结构外,字符串是另外一种数据结构。字符串包括创建、索引、切片、连接以及属于字符串的方法,下面将一一介绍。1.字符串的概念与创建在Python中,使用单引号('')或双引号("")括起来的内容,称为字符串类型数据(str),可以使用以下4种方式创建字符串。①单引号(''),其中可以包含双引号;②双引号(""),其中可以包含单引号;③三单引号(''''''),其中可以包含单引号和双引号,可以跨行;④三双引号(""""""),其中可以包含单引号和双引号,可以跨行。知识链接子任务1定义和操作字符串2.字符串的索引Python字符串中的元素(字符)可以用下标法来索引,包括正向递增序列和反向递减序列法,如图3-11所示。(1)正向递增序列:从左向右索引,下标使用正数和0,最左边的字符下标从0开始;(2)反向递减序列:从右向左索引,下标使用负数,最右边的字符下标从-1开始。图3-11从两个方向索引字符串注意:索引越界会引发错误。字符串索引的格式为:S[下标],S为定义的变量。知识链接子任务1定义和操作字符串3.字符串的切片Python中字符串也提供区间访问方式,采用[头下标:尾下标]的方式,这种访问方式称为“切片”,切片的结果也是字符串的一个子集。需要注意的是:(1)若有字符串S,S[头下标:尾下标]表示在字符串S中取索引值从头下标到尾下标(不包含尾下标)的子字符串;(2)切片方式中,若头下标缺省,表示从开始(即索引下标0)取子串;若尾下标缺省,表示取到最后一个字符;若头下标和尾下标均缺省,则取整个字符串;(3)索引越界会被Python解释器自动处理为边界值,不会引起报错。字符串切片还可以设置取子串的顺序,只需要再增加一个参数即可,把[头下标:尾下标]变成[头下标:尾下标:步长]。需要注意的是:(1)当步长值大于0的时候,表示从左向右取字符;当步长值小于0的时候,表示从右向左取字符;(2)步长的绝对值减1,表示每次取字符的间隔。知识链接子任务1定义和操作字符串4.字符串的连接与重复字符串可以实现连接和重复操作。如图3-15所示。(1)“字符串+字符串”实现字符串连接操作;(2)“字符串*n”实现字符串重复n次。5.获取字符串的长度、最大元素和最小元素Python提供内置函数len()、max()、min()来分别获取字符串的长度、最大元素和最小元素。知识链接子任务1定义和操作字符串6.字符串的常用方法字符串的常用方法如表3-11所示。子任务2定义和操作列表任务导入子任务2定义和操作列表某学校计算机系年底对18级15个班进行三个年度的综合成绩排序,从上课出勤、活动参与、青年大学习和竞赛参加等情况进行综合考评,推出了“计算机系18级各年度前十综合考评排行榜”。2018-2019年度、2019-2020年度和2020-2021年度三年的前十名综合排名情况,详细信息如表3-12所示。本任务设计程序实现如下功能:使用列表操作来对“计算机系18级各年度前十名综合考评排行榜”进行榜单更新管理,输出2020-2021年度排行榜中位居榜单前三名的班级名称。任务目标子任务2定义和操作列表1.能说出列表的概念。2.能使用列表的操作完成任务。3.发扬精益求精的大国工匠精神。任务分析子任务2定义和操作列表实现三个年度排行榜信息的管理,可以选择使用列表这种数据结构来进行存储排行榜元素。使用列表的遍历、修改、增加等操作实现排行榜的更新功能。任务实施子任务2定义和操作列表1.定义列表定义列表list_class,并初始化赋值为2018-2019年度排行榜10个元素。任务实施子任务2定义和操作列表2.修改列表修改列表list_class中元素操作,使得列表元素更新为2019-2020年度排行榜元素,并输出结果2019-2020年度排行榜信息。任务实施子任务2定义和操作列表3.更新列表使用del操作删除list_class中最后两个元素,使用append()方法添加两个新元素,完成更新。任务实施子任务2定义和操作列表4.计算结果并输出使用for循环,遍历列表前三个元素,输出2020-2021年度榜单前三元素。知识链接子任务2定义和操作列表字符串中的元素只能是字符,所以在使用时有一定的局限性。所以Python提供了另外一种数据结构-列表,它允许把任意的数据结构组合在一起。1.列表的创建及特点列表(list)用来有序存放一组相关数据(任意数据类型),以便进行统一的处理。创建:在Python中,可以用list()函数或方括号[]创建列表(1)创建空列表时,二者结果一致。(2)创建有元素的列表时list()函数:只能输入一个可迭代对象,然后把可迭代对象的元素加入列表;方括号[]:可以输入多个对象,把输入的对象作为元素整体加入列表。知识链接子任务2定义和操作列表列表具有如下特点:(1)有序化,列表的元素被有序的组织在一起;(2)可以包含任意类型对象;(3)列表的元素可以通过索引访问;可迭代,可遍历;(4)支持自动解包;(5)列表可以任意嵌套,即可以包含其它列表作为子列表;(6)列表的大小是可变的;(7)列表是可变对象(mutable),即列表元素可以增加、更改或删除。知识链接子任务2定义和操作列表2.列表的索引和切片在Python中列表中的元素可以用下标法来索引:(1)从左到右索引,使用正数,最左边的字符下标从0开始(2)从右到左索引,使用负数,最右边的字符下标从-1开始注意:索引越界会引发错误列表的切片和字符串的切片操作相似,唯一的区别就是字符串中每个元素是一个字符,列表中每个元素是一个数据。在此列表的切片不再赘述。

图3-18从两个方向索引列表知识链接子任务2定义和操作列表3.列表的基本操作列表的基本操作如表3-13所示。知识链接子任务2定义和操作列表4.列表的常用方法列表的常用方法如表3-14所示。子任务3

定义和操作元组任务导入子任务3定义和操作元组江苏省13个地级市GDP数据在网上已经全部公布,如表3-15是江苏省2021年GDP总量在前十位的城市的详细数据。本任务设计程序实现如下功能:使用一种数据结构存储2021年江苏省各市GDP前十城市数据信息,并提供查询功能。用户可以通过输入GDP排名序号,查询到对应城市2021年GDP数据详细信息。任务目标子任务3定义和操作元组1.能说出元组的概念。2.能使用元组的相关操作完成任务。3.能够增强自主探究学习的能力,新征程上踔厉奋发、勇毅前行。任务分析子任务3定义和操作元组若使用一种数据结构存储2021年江苏省各市GDP数据信息,由于2021年江苏省各市的GDP数据信息已经在网上公布,所以前十名城市GDP数据信息不会发生更改,所以我们可以选择使用元组这一数据结构来进行存储各市的GDP数据信息。使用元组访问元素操作实现查询要求。任务实施子任务3定义和操作元组1.定义元组定义元组JS_city,并初始化赋值为2021年江苏省各市GDP前十数据信息。任务实施子任务3定义和操作元组2.查询信息并输出结果添加while循环,实现可以循环接收用户多次查询输入信息,根据用户输入的序号值,查询元组对应的元素,打印出该城市2021年的GDP数据信息,设置程序循环终止条件,输入结束字符,程序结束。任务实施子任务3定义和操作元组3.输出结果知识链接子任务3定义和操作元组元组(tuple)跟列表一样,也是一种数据结构。可以把元组看作不可变列表,即元组一旦创建,就不能以任何方式对其元素进行增加、更改或删除。元组的创建跟列表相似,不同之处在于元素被放在小括号()而不是方括号[]中。索引的规则与列表的规则相同。1.元组的创建在Python中,可以用tuple()函数或小括号()创建元组。(1)创建空元组时,二者结果一致。(2)创建有元素的元组时tuple()函数:只能输入一个可迭代对象,然后把可迭代对象的元素加入元组;小括号():可以输入多个对象,把输入的对象作为元素整体加入元组。2.元组的索引和切片元组的索引和切片规则与列表的相似,在这里不再赘述。知识链接子任务3定义和操作元组3.元组的基本操作元组的基本操作与列表相似,但在形式上有所不同,如表3-16所示。知识链接子任务3定义和操作元组4.元组的常用方法由于元组对象是不可变对象,所以元组对象内置(built-in)的方法只有两种。元组的常用方法如表3-17所示。

子任务4定义和操作字典任务导入子任务4定义和操作字典某公司研发部有若干员工,每一名员工都被分配了一个唯一的工号,如表3-18为某公司研发部员工信息,人事部按照信息表进行人员管理。本任务设计程序实现如下功能:使用一种数据结构存储此公司研发部员工信息,并对员工信息进行增、删、改、查操作。任务目标子任务4定义和操作字典1.能说出字典的概念。2.能使用字典的相关操作完成任务。3.发扬科学严谨、操作规范等大国工匠精神。任务分析子任务4定义和操作字典研发部员工信息表只有两列信息(员工工号和员工信息)。我们可以选择字典这种数据结构来存储研发部员工信息。由于第一列信息“工号”每名员工是唯一的,所以该列为字典中的“键”,第二列是“员工信息”为字典中的“值”。使用字典的增加、删除、修改、查找操作可以实现对员工信息表的管理。任务实施子任务4定义和操作字典1.定义元组定义元组staff,并初始化赋值为某公司研发部员工信息“键”为员工工号,“值”为员工信息;任务实施子任务4定义和操作字典2.完成添加、删除、修改和查找操作增加while循环,实现可以循环接收用户多次输入操作指令;根据用户输入操作指令(操作指令:i增加,r删除,c修改,s查找),执行相应的字典增加元素操作、删除元素操作、修改元素操作、查找元素操作;当staff增加元素时,程序要判断增加的员工工号是否存在字典中,如果存在,则添加失败。当删除staff元素时,程序要判断删除的员工工号是否存在字典中,如果存在,则添加失败。当修改staff元素时,程序要判断修改的员工工号是否存在字典中,如果存在,则修改失败。当查找staff元素时,程序要判断查找的员工工号是否存在在字典中,如果存在,则添加失败;设置程序循环终止条件,输入结束字符,程序结束。任务实施子任务4定义和操作字典3.输出结果知识链接子任务4定义和操作字典字典是一种基础元素为“键-值对(key-valuepair)”,无序可变的,可嵌套可迭代的数据结构。1.字典的创建和主要特点创建:字典用大括号“{}”来定义,在大括号中,用冒号“:”来分隔键-值对(key-valuepair),键-值对之间用逗号“,”分隔。在Python中,可以用dict()函数或大括号{}创建字典。主要特点:(1)基础元素为键-值对,通过键名而不是索引号来索引访问值;(2)字典中的元素是无序的,意味着无法通过索引来访问;(3)字典中的元素访问速度远高于列表和元组;(4)字典是可变的,元素可以增加、更改或删除;(5)支持自动解包;(6)字典可以任意嵌套;(7)通过键来访问值;(8)键必须唯一,若键的输入有重复,最后一次输入的键会被记住;(9)值可以是任何类型,而且值可以重复;键必须是不可变的数据类型,例如字符串,数字或元组。(10)空字典用大括号“{}”表示;知识链接子任务4定义和操作字典2.访问字典的值字典是无序元素的组合,意味着不能通过索引来访问字典的元素。字典规定通过方括号[]和键(key)来访问值(value),若键不存在,则会引发错误。3.删除字典的元素字典是可变对象,可以通过方括号[]和键名(key)加赋值语句来添加和修改字典元素;通过方括号[]和键名(key)加del()函数来删除字典元素。4.字典的基本操作字典不支持连接“+”,重复“*”操作,但支持长度len(),最大元素max(),最小元素min()、检查成员资格操作符“in”等等。知识链接子任务4定义和操作字典字典的基本操作如表3-19所示。知识链接子任务4定义和操作字典5.字典的常用方法字典的常用方法如表3-20所示。

子任务5定义和操作集合任务导入子任务5定义和操作集合某学校计算机系为了便于对同一门课程的授课教师进行管理,设置了统计表,用于统计三门核心课程授课教师名单,如表3-21所示。不同学期授课教师都有更新,用此方法便于更新管理。本任务设计程序实现如下功能:使用一种数据结构存储三门核心课程的授课教师名单,并统计出讲授其中两门课程的名单。计算机系根据每学期的课程讲授情况,更新讲授名单,实现授课教师名单的添加、修改、删除等管理。任务目标子任务5定义和操作集合1.能说出集合的概念。2.能使用集合的相关操作完成任务。3.发扬精益求精、求真务实的工匠精神。任务分析子任务5定义和操作集合通过学习微课,完成任务。要统计出教授过同一门课程的教师名单,可以使用集合这一数据结构来统计,并使用集合的增加、删除、修改操作实现对课程教授名单的更新管理。任务实施子任务5定义和操作集合1.定义集合定义三个集合cxsj_set、sjjg_set、sjk_set分别存储Python语言程序设计、数据结构、数据库应用基础三门课程的教师教授名单。任务实施子任务5定义和操作集合2.集合交集操作使用集合交集操作符“&”可以实现输出两个集合重叠的教师名单。任务实施子任务5定义和操作集合3.更新集合元素并输出结果使用add()方法可以增加集合元素,使用remove方法可以删除集合元素,从而实现对课程教师教授名单的更新管理。任务实施子任务5定义和操作集合4.输出结果知识链接子任务5定义和操作集合集合(set)是数学中最基本的概念之一,指定义明确的不同对象的聚集。Python中的集合类可以看作是数学集合概念的Python程序实现。与有序的列表类相比,集合类是无序且没有重复元素的,可变,可迭代的数据结构。1.集合的创建跟字典一样,集合也是用大括号“{}”来定义,只是没有冒号“:”。在Python中,可以用set()函数或大括号“{}”创建字典。“{}”已经被解释为空字典,所以不能用“{}”来创建空集合,只能用set()创建空集合。当用“{}”来创建集合时,“{}”会把输入对象作为一个集合元素,整体加入集合,所以输入对象不能是可变数据类型,例如,将[1,2,3,4]作为输入,由“{}”创建集合,会引发unhashabletype的错误。当用set()函数来创建集合时,set()函数会把输入对象的元素作为集合元素加入集合,所以输入对象可以是可变数据类型,但其元素必须是不可变数据类型,例如,可以将[1,2,3,4]作为输入,由set()函数创建集合;但将[[1,2],[3,4]]作为输入,由set()函数创建集合,会引发unhashabletype的错误。2.集合的主要特点(1)集合元素唯一(unique),这意味着集合中没有重复的元素对象;(2)集合元素无序(unordered),这意味着不能通过下标引用集合元素;(3)集合对象可变,可迭代;(4)集合只能接受不可变的数据类型作为元素;(5)集合常用于高效的找出两个数据集中的共同点和差异点。知识链接子任务5定义和操作集合3.访问集合的元素集合是无序元素的组合,意味着不能通过索引来访问集合的元素;集合又没有键,无法像字典一样通过键来访问值(value)。Python没有提供单独索引集合元素的方法。4.集合的基本操作 跟字典一样,集合不支持连接“+”,重复“*”操作,但支持长度len(),最大元素max(),最小元素min()、检查成员资格操作符“in”等等。集合的基本操作如表3-22所示。知识链接子任务5定义和操作集合5.集合的常用方法集合的常用方法如表3-23所示。知识链接子任务5定义和操作集合6.集合的运算(1)交集运算交集(intersection)是找出两个集合之间共有的元素。交集由Python中自带对象的方法intersection(),或者运算符“&”来实现。(2)并集运算并集(union)是合并两个集合,并自动去掉重复的元素。并集由Python中自带对象的方法union(),或者运算符“∣”(对应标点符号中的竖线)来实现。(3)差集运算差集(difference)是找本集合中有而另外一个集合中没有元素差集由Python中自带对象的方法difference(),或者运算符“-”来实现。(4)子集运算子集(subset)是检查本集合的所有元素是否都在另外一个集合里面。子集由Python中自带对象的方法issubset()来实现。知识拓展子任务5定义和操作集合在Python中,由于列表中的数据可以是任意类型的数据,所以,列表中可以有列表,也就是嵌套列表,因此,Python支持二维列表的概念。二维列表中的信息以行和列的形式表示,第一个下标表示元素所在的行,第二个下标表示元素所在的列。在Python中,创建二维列表有以下方法:(1)直接定义二维列表在Python中,二维列表是包含列表的列表,即一个列表的每一个元素又都是一个列表,语法格式为:listname=[[元素11,元素12,元素13,…,元素1n],[元素21,元素22,元素23,…,元素2n],…[元素n1,元素n2,元素n3,…,元素nn]]。如下就是一个二维列表。list1=[['床','前','明','月','光'],['疑','是','地','上','霜'],['举','头','望','明','月'],['低','头','思','故','乡']]。

知识拓展子任务5定义和操作集合(2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论