Python程序设计教程(工作手册式) 教案 王瑶 情景1、2 揭秘Python程序设计之谜、控制程序的结构_第1页
Python程序设计教程(工作手册式) 教案 王瑶 情景1、2 揭秘Python程序设计之谜、控制程序的结构_第2页
Python程序设计教程(工作手册式) 教案 王瑶 情景1、2 揭秘Python程序设计之谜、控制程序的结构_第3页
Python程序设计教程(工作手册式) 教案 王瑶 情景1、2 揭秘Python程序设计之谜、控制程序的结构_第4页
Python程序设计教程(工作手册式) 教案 王瑶 情景1、2 揭秘Python程序设计之谜、控制程序的结构_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

Python程序设计工作手册式教材教案专业名称:课程名称:Python程序设计任课班级:教师姓名:所属院系:职称:课时:64使用教材:

情景一揭秘Python程序设计之谜教学课题IDLE的下载安装和使用序号1课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:掌握下载和安装IDLE的方法,熟练掌握IDLE的命令(交互)模式和程序(脚本)模式,熟练应用IDLE来编写、运行Python程序。知识目标:认识Python语言、了解Python发展历史、特性和应用范围。素质目标:接受新知识、自主学习的能力。教学重点IDLE的使用教学难点Python程序的调试运行教学过程设计备注一、课程概述介绍教师个人信息、联系方式等;介绍Python程序设计课程在计算机应用技术专业中的地位;介绍Python技术的应用领域;介绍Python程序设计课程的考核等。二、教学内容1、Python语言的发展历史python是1989年圣诞节期间,由荷兰人GuidovanRossum(吉多.范罗苏姆)在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森的飞行马戏团》(MontyPython'sFlyingCircus)。python2.0于2000.10.16日发布,增加现实完整的垃圾回收,并支持Unicode。2018年3月,该语言作者在邮件列表上宣布Python2.7将于2020年1月1日终止支持。Python3.0于2008.12.3日发布,此版不完全兼容之前的Python源代码。不过,很多新特性后来也被移植到旧的Python2.6/2.7版本。Python的特点易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。易于阅读:Python代码定义的更清晰。易于维护:Python的成功在于它的源代码是相当容易维护的。一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。数据库:Python提供所有主要的商业数据库的接口。GUI编程:Python支持GUI可以创建和移植到许多系统调用。可嵌入:你可以将Python嵌入到C/C++程序,让你的程序的用户获得“脚本化”的能力。3、IDLE的下载在Windows平台下载IDLE的步骤打开浏览器,访问Python官网/,单击“Downloads”菜单下的“Windows”版本如果需要下载其它历史版本,可以直接进入Downloads按钮,选择符合本地计算机系统和位数的Python版本即可。点击Download

后边的链接就可以直接下载了。4、IDLE的安装双击下载的文件,此时会弹出一个Python安装向导的窗口。勾上“AddPython3.9toPATH”,然后单击“Customizeinstallation”按钮。默认选择,单击“Next”按钮。在弹出的窗口中可以修改安装路径。安装成功之后,会弹出安装成功的窗口。5、让同学们在计算机上把Python的下载与安装实践操作一遍。6、IDLE的使用IDLE(IntegratedDevelopmentandLearningEnvironment)官方标准集成开发环境,从官网下载Python并安装后,同时就安装了IDLE。安装完成后,使用组合键“Win+R”打开运行窗口,输入“cmd”,打开命令提示符窗口,在窗口中输入“python”或“py”,此时如出现下图所示的信息,则说明Python已经成功安装。当然,我们也可以使用开始按钮,找到Python3.9下的IDLE(Python3.964-bit)官方标准集成开发环境,到如下图所示。”>>>”提示符表示Python已经做好准备,等待你向它发布命令,让它干活。7、让同学们在计算机上把IDLE的命令(交互)模式和程序(脚本)模式都实践操作一遍,加深印象。三、总结通过本次任务的学习和实践,我们了解了Python语言的发展历史、特点和应用领域,能够独立完成IDLE的下载与安装任务,并且能够熟练地掌握和使用IDLE的命令(交互)模式和程序(脚本)模式来完成基本的操作。同时建议大家树立版权意识,通过官方网站下载正版软件,避免到陌生的网站和平台下载未经验证的软件。作业布置使用IDLE输出:“好好学习,天天向上!”教学反思教师总结本次课的知识点,重点强调Python语言的优点和应用领域,突出Python程序设计的重要性和应用性,从而提高同学们的学习兴趣。结合教学重点和难点,对所学知识进一步强化。情景一揭秘Python程序设计之谜主题输入与输出序号2课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:在PyCharm集成开发环境中,编写程序实现用户信息的录入(包括用户名、密码、姓名、性别、年龄等),并将上述信息以格式化输出到控制台。知识目标:了解PyCharm的版本、功能和创建、运行Python程序的步骤。素质目标:接受新知识、自主学习的能力。教学重点使用PyCharm开发环境编写Python程序教学难点Python程序的调试运行教学过程设计备注一、复习上一节上课内容并引出本节上课内容Python语言的发展历史,Python的下载与安装,IDLE的使用;同学们上节课已经掌握了Python自带IDLE的两种应用模式,大家觉得如果使用这两种模式中的一种来开发一个应用程序,方便吗?有没有困难?显而易见,Python自带IDLE应用到真实的开发案例中就有些功能不足、捉襟见肘了。大致原因有:界面不友好、没有代码提示功能、自带的数据包很少等。论语有云:“工欲善其事,必先利其器”,本次课我们一起来学习让Python开发事半功倍的PyCharm。二、教学内容1、PyCharm的介绍PyCharm是一种PythonIDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。PyCharm是由JetBrains打造的一款PythonIDE,同时支持GoogleAppEngine,PyCharm支持IronPython。这些功能在先进代码分析程序的支持下,使PyCharm成为Python专业开发人员和刚起步人员使用的有力工具。PyCharm分为专业版(Professional)和社区版(Community),这两种版本的区别是:专业版:功能全,适合专业开发人员,需要收费。社区版:部分功能,适合学生、教育者,免费。相比专业版,社区版缺少专业版中的Web开发,PythonWeb框架,Python的探查,远程开发等功能。2、PyCharm的下载打开PyCharm官网(/pycharm),单击“Download”。选择”Community”社区版,单击“Download”下载即可。3、PyCharm的安装下载完成后,双击安装包进行安装,单击“Next”按钮;单击"Browse…修改安装路径,建议不要使用中文字符,单击“Next”按钮。根据自己的实际情况勾选相应选项,单击“Next”开始安装;稍等片刻,出现安装成功提示,单击“Finish”,重启电脑完成安装。4、创建PyCharm项目第一步:双击桌面“PyCharmCommunityEdition2021.2”启动程序;勾选同意后单击“Continue”,单击“NewProject”按钮创建新项目。第二步:设置“NewProject”相应选项。第三步:在新建好项目上单击右键,创建Python文件。第四步:编写Python文件,在代码编辑区单击右键选择“Runcqcvc”或“Ctrl+F5”键,运行该文件。5、输入不同的数据类型input函数默认接收到的数据为都为字符串类型。如果需要输入不同的数据类型,那么就要做一个工作,将用户录入的字符串类型转为整型即可。6、输出转义字符中的特殊字符转义字符功能转义字符功能\n换行符,光标位置移到下一行开头\r回车符,将光标位置移到本行开头。\r后面的内容移到字符串开头,并逐一替换开头部分字符,直至将后面的内容完全替换\t水平制表符,即Tab键,一般相当于四个空格\b退格(Backspace)\’输出单引号\”输出双引号\续行符(在行尾时)\\输出反斜线符号Python支持格式化字符串的输出,%运算符通常被称为字符串取模运算符,可用于字符串格式化,最基本的用法是将一个值插入到一个有字符串格式符%x的字符串中。在字符串中把需要输出的变量值用{}来代替,然后用format()来修改使之成为想要的字符串,默认情况下按照从左往右的顺序自动进行替换;但也可以在大括号中写入序号让替换的值根据位置而改变;同时还可以使用关键字来实现一一对应的赋值替换,其中数字的精度通过在大括号前加冒号,格式为{:.xf}如果x为整数则没有意义。7、让同学们在计算机上把PyCharm的下载安装与使用实践操作一遍,老师对同学们的操作进行指导和答疑。三、总结通过本次任务的学习和实践,掌握了PyCharm的下载安装与使用、输入与输出函数的使用方法。并且能够熟练地使用输入函数完成信息的录入以及数据类型的转换、使用输出函数进行格式化输出。同时理解在程序编写过程中代码规范的目的和意义,不仅仅可以增加程序的可读性和可维护性,更重要的是可以促进团队合作、降低维护成本、有助于程序员自身的成长。作业布置使用PyCharm输出:“书山有路勤为径,学海无涯苦作舟”教学反思教师指出学生实践中可能出错和已经出错的地方,结合教学重点和难点,对所学知识进一步强化。情景一揭秘Python程序设计之谜主题第三方库的安装序号3课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:掌握两种安装第三方库的方法。知识目标:了解标准库与第三方库的区别、常用的第三方库名和功能。素质目标:接受新知识、自主学习的能力。教学重点第三方库的安装教学难点常用的第三方库名和功能教学过程设计备注一、复习上一节上课内容并引出本节上课内容我们使用Python来编写程序完成特定的功能,如果所有功能都重新开发的话,势必会延长开发的周期,增加开发的成本。其中Python的特点之一就是因为其本身具有丰富而且强大的库的第三方库,从而使编程效率大大提高。我们只需要完成第三方库的安装,再导入后调用,即可实现具体功能。二、教学内容1、第三方库简介Python有两个库,分别是标准库与第三方库。标准库是随着Python安装的时候默认自带的库;而第三方库则需要下载后安装到python的安装目录下。强大的标准库奠定了python发展的基石,丰富和不断扩展的第三方库是python壮大的保证。可以说不断丰富并完善的Python库才是Python真正的魅力所在。我们可以把第三方库理解为一个黑匣子,它将编程过程中需要实现的功能进行归类,再对某一类功能进行开发后封装,以第三方库的形式表现出来。使用者不用关心它的内部逻辑和实现过程,只需要去寻找、掌握什么样的库可以帮助我们实现具体的功能,然后根据库的使用方法直接导入对应第三方库后再调用即可,常用的第三方库名和功能如下表所示。库名功能库名功能NumPy数据分析和计算基础库Flask轻量级Web开发框架Matplotlib二维数据可视化WeRoBot微信机器人开发框架PIL图像处理SymPy数学符号计算工具Scikit-Learn机器学习和数据挖掘Pandas高效数据分析和计算RequestsHTTP协议访问及网络爬虫Networkx复杂网络和图结构的建模和分析Jieba中文分词PyQt5基于Qt的专业级GUI开发框架BeautifulSoupHTML和XML解析器PyOpenGL多平台OpenGL开发接口WheelPython第三方库文件打包工具docoptPython命令行解析PyInstaller打包Python源文件为可执行文件PyGame简单小游戏开发框架DjangoPython最流行的Web开发框架Flask轻量级Web开发框架2、通过PyCharm安装第三方库双击桌面“PyCharmCommunityEdition”快捷方式打开项目,单击“File”——“Settings”,在打开的对话框中单击“Project:xx”左边的小箭头符号(xx是新建的项目名称)——再单击“PythonInterpreter”。此时可以看到已经安装成功的第三方库以及版本。安装第三方库单击对话框右侧的“+”号,在弹出的“AvailablePackages”对话框中,左上方搜索栏中(放大镜后)输入你要安装的第三方库名(这里我们以安装numpy为例),PyCharm会自动搜索输入的库名,此时左侧显示与该库名类似的第三方库;右上方显示当前库的信息和版本号、右下方可以选中复选框选择你需要下载的版本(如果不勾选则默认为最新版本)如图1-27所示,最后单击“InstallPackage”开始自动安装,具体安装时间同第三方库的大小和网络速度有关。安装结束后,返回“Settings”,会看到新安装的第三方库和安成功提示信息。3、通过pip命令安装第三方库首先使用组合键“Win+R”打开运行窗口,输入“cmd”,打开命令提示符窗口,在窗口中输入“piplist”查看已安装的包,如果出现了WARNING提示,说明pip版本需要更新,只需要将提示信息后的更新命令复制后粘贴到提示后,回车确认即可完成更新。将pip更新以后,使用“pipinstall第三方库的名”就可以自动下载并安装第三方库了。如果在命令行末尾看到有“Successfullyinstalled”信息即安装成功,操作过程如图1-30所示。最后使用“piplist”命令进行安装验证如下图所示,如果想要卸载已经安装过的第三方库使用“pipuninstall库名”即可卸载。4、注意事项1.某些第三方库之间是有依赖关系的,可以使用“pipshow库名称”进行查看;2.使用pip命令安装第三方库,有时速度较慢,可以在“pipinstall第三方库名”后加一个“-i”参数,后面可以指定国内的一个镜像源,用这个方法可以更加快速的安装好第三方库。(pipinstallnumpy-i/simple)三、总结通过本次任务的学习和实践,我们了解了第三方库重要的意义、常用第三方库的名称和功能、Python官方第三方库的地址和国内镜像链接,掌握了安装第三方库的三种方法:能够独立通过PyCharm、pip命令和下载whl文件到本地离线安装第三方库,同时还掌握了第三方库的查询、更新和卸载的方法。强大的标准库奠定了python发展的基石,而不断丰富和扩展的第三方库则是python的魅力所在,目前第三方库已有几十万种,很多第三方库不仅功能强大而且还十分健壮,值得我们借鉴和学习。这正如牛顿所说:“如果说我比别人看得更远些,那是因为我站在了巨人的肩上”。作业布置安装第三方库Python-docx、xlrd、xlwt和Python-pptx教学反思情景一揭秘Python程序设计之谜主题人机交互序号4课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:能够根据需要划出流程图,并且输入用户信息后能够格式化输出。知识目标:了解IPO程序设计模式、常用流程图符号以及代码注释的两种形式。素质目标:接受新知识、自主学习的能力。教学重点根据要求绘制流程图,并完成四则运算教学难点格式化输出教学过程设计备注一、复习上一节上课内容并引出本节上课内容人机交互技术(Human-ComputerInteractionTechniques)是指通过计算机输入、输出设备,以有效的方式实现人与计算机对话的技术。人机交互技术包括机器通过输出或显示设备给人提供大量有关信息及提示请示等,人通过输入设备给机器输入有关信息,回答问题及提示请示等。人机交互技术是计算机用户界面设计中的重要内容之一。本次任务需要完成两个综合练习,一是输入数字后进行四则运算(画出流程图)、二是输入用户信息后格式化输出(增加注释)。二、教学内容1、IPO程序设计模式程序设计的关键是对问题进行分析和处理,需要弄清楚问题的输入数据是什么?需要得到什么结果?重点是如何根据输入数据获得输出结果,也就是如何对输入数据进行处理,获得最终结果,这个处理数据的过程,称之为算法。通常将程序设计分为三个步骤:即输入数据、处理过程(算法)、输出结果,称之为IPO程序设计模式。I:(Input)输入数据,用到的标准输入设备,就是鼠标和键盘;P:(Process)处理过程(算法),指中央处理器对储存在内存中的数据进行处理;O:(Output)输出结果,通常用到的标准输出设备,就是显示器。比如,用户在键盘上输入任意两个数字,经过求和运算,最后把结果输出到屏蔽上,就是一个IPO程序设计模式。2、Python流程图符号流程图是一种用于表示算法或代码流程的框图组合,它以不同类型的框代表不同种类的程序步骤,每两个步骤之间以箭头连接起来。在程序开发中使用流程图,有助于规划高效的程序结构、便于他人交流同时也是撰写指导文档不可缺少的内容。Python常用流程图符号如下图所示。3、代码注释代码的注释是程序设计中不可缺少的,良好的注释可以增加程序的可读性,也方便程序员后期对代码进行维护。Python代码的注释有两种形式,一种是单行注释,一种是多行注释,首先我们来看一下单行注释。(1) 单行注释:以“#”开始,表示本行是注释行,也就是“#”之后的内容是注释信息,当程序执行时,这部分内容会被忽略。代码如下所示:#用户输入成绩score=float(input(“请输入成绩:”))在Pycharm中,可以使用快捷键批量添加单行注释,直接选中要添加注释的语句,使用组合键“Ctrl+/”即可批量注释多行。但是如果使用Python官方集成开发环境,要批量添加多行注释的话,就要使用第二种注释方法:三引号。(2) 多行注释:用三个单引号“’’’”或者是三个双引号“"""”将注释的内容括起来。多行注释通常用来为Python文件、模块、类或者函数等添加版权、功能描述等信息,代码如下所示:'''这段程序的功能是:判断输入成绩是否大于等于60,是则输出及格。'''score=float(input(“请输入成绩:”))特别说明:在Python中,如果多行注释(三个单引号或三个双引号)作为语句的一部分出现,就不能再将它们视为多行注释的标记,而应看做是字符串的标志。比如,我们使用三个单引号将'''Hello,World!'''放在print()输出函数中,这个时候三个单引号之内的信息就不再是注释了,而是输出的字符串。print('''Hello,World!''')语句的执行结果为:“Hello,World!”由此可见,Python解释器没有将这里的三个单引号看做是注释,而是将它们看作是字符串的标志。4、输入数字后进行四则运算现在按任务要求将流程图符号进行组合连接画出四则运算中的加法流程图如下图所示,其余三种运算与加法流程图类似。紧接着,开始程序具体功能的实现。此时需要特别注意,在Python3.x中input()函数默认接收到的数据为字符串型,如果将两个字符串类型相加实则完成字符串连接的功能,而非真正的相加。所以需要将字符串型转为浮点型后,再进行数值之间的相加,源代码和运行结果如下图所示。5、输入用户信息后格式化输出首先完成用户名、密码、姓名、性别、年龄等信息的录入,使用多个input()来重复录入即可,再将录入后不同的个人信息分别保存到不同的变量中。在字符串中把需要输出的变量值用{}来代替,然后用format()来修改使之成为想要的字符串,其中数字的精度通过在大括号前加冒号,格式为{:.xf},源代码如下图所示。执行代码后依次输入:用户名、密码、姓名、性别、年龄和职务,回车确认后,格式化输出结果如下图。三、总结通过本次任务的学习和实践,掌握了IPO程序设计模式、Python流程图符号和代码注释的两种方法。并且能够根据要求熟练地使用流程图符号画出对应流程图、使用input函数完成各种类型信息的录入、使用print函数进行格式化输出。同时理解了代码注释的意义,对于复杂的操作,操作前应该写上多行注释、不是一目了然的代码,应在其行尾添加注释。对于许多程序员来说,基本的原则之一就是“:让代码自己说话”。代码的注释不仅仅要为将来可能维护你代码的人考虑,而且要考虑到读注释的可能是你。作业布置教学反思Python程序设计工作手册式教材教案专业名称:课程名称:Python程序设计任课班级:教师姓名:所属院系:职称:课时:64使用教材:

情景二控制程序的结构教学课题用户信息的保存序号1课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:掌握列表、元组、字典的创建、访问和操作方法,并能够根据实际情况保存用户信息。知识目标:了解常见的数据类型。素质目标:接受新知识、自主学习的能力。教学重点IDLE的使用教学难点Python程序的调试运行教学过程设计备注一、技术准备整形:整型就是我们平常所见的整数,它是不带小数点的,可以是正整数或负整数。浮点型:平时所用的带有小数的数。浮点型两种表现形式:带小数和科学计数。布尔型:布尔型表示事物的两种状态:真或假(True和False),没有第三种。分别对应整型数值:1和0。Python中任何空值都视为假,包括:Flase、None、0、[]、()、{}。复数型:由实数部分和虚数部分构成,虚数部分必须有小写的j或大写的J组成,并且实部和虚部都是浮点数。二、教学内容1、列表的创建、访问和操作方法列表(list)是Python的一种内建结构数据类型。把所有元素放在一对“[中括号]”内,以“,”进行分隔,同一个列表中的元素可以是不同的类型。列表是一种可变序列类型,可以进行增加、修改、删除元素等操作。(1)列表的创建>>>x=[1,2,3,4]>>>type(x)<class'list'>>>>y=[1,'a','python',9.9]>>>type(y)<class'list'>(2)列表的访问使用下标索引来访问列表中的值,从左往右以0开始依次增加,也可以从右往左以-1开始依次减小,如下图所示。(3)列表的常用操作方法序号方法分类功能描述1列表.append(object)增加在列表的尾部追加元素2列表.insert(index,object)在列表的某个位置插入一个元素3列表1.extend(列表2)在列表2扩充到列表1后4列表.remove(value)删除删除列表中指定的第一个元素5列表.pop(index)删除指定索引的元素,省略则指列表尾部6列表.clear()清空列表中的所有元素7列表[index]=object修改修改列表指定索引的元素8列表.index(value)查询返回某元素在列表中的位置,未找到则报错9列表.count(value)统计返回列表中某元素出现的次数10列表.sort(reverse=False)排序将列表中的元素默认按升序排序11列表.reverse()将列表中元素的顺序颠倒2、元组的创建、访问和操作方法(1)元组的创建元组是Python的一种内建结构数据类型。把所有元素放在一对“()”内,以“,”进行分隔,同一个元组中的元素可以是不同的类型。元组属于不可变序列,一旦创建,不可以修改、删除元素操作。首先声明一个空列表,可以使用li=[],表示一个空的列表;同理我们声明一个空元组,也可以使用tu=(),表示一个空的元组。再声明一个元组x,元组x包含四个整数:1,2,3,4,我们可以这样写:x=(1,2,3,4)回车,我们输出x的内容看一下结果。和列表一样,元组中的元素也可以是不同的类型的。最后再声明一个元组y,让y中包含不同的元素类型,操作代码如下。>>>li=[]>>>type(li)<class'list'>>>>tu=()>>>type(tu)<class'tuple'>>>>x=(1,2,3,4)>>>type(x)<class'tuple'>>>>y=(1,'a','python',9.9)>>>type(y)<class'tuple'>(2)访问元组中的值同列表一样,使用下标索引来访元组中的值,从左往右以0开始依次增加,也可以从右往左以-1开始依次减小。(3)元组的操作方法元组只有两个操作方式,分别是index和count。序号方法功能描述1tuple.index(value,[start[,stop]])返回某元素在元组中的位置2tuple.count(value)返回元组中某元素出现的次数3、字典的创建、访问和操作方法(1)字典的创建字典是Python的一种内建结构数据类型。每个元素都是:“键:值”对形式存在。用“{}”将所有元素括起来,各元素之间用“,”进行分隔。字典与列表和元组主要的不是同:字典是无序的,其元素的访问通过“键”实现,而不是通过元素的位置,并且要求字典中”键”不能重复。>>>d1={}>>>type(d1)<class'dict'>>>>d2={'python':1,'c':2,'java':3}>>>type(d2)<class'dict'>(2)访问字典中的值在列表的学习中,掌握了列表是通过下标索引进行访问,那字典的访问形式和列表一下吗?我们使用之前声明的字典d3,尝试访问第一个元素,在集成环境中输入d3[0]回车,返回错误信息,说明字典不支持下标索引的方式来访问。访问字典中的值是通过“键”来访问的,并且键是不变的。(3)字典的操作方法序号方法功能描述1dict.clear()清空字典2dict.copy()复制字典3dict.get(k,[default])获得k(键)对应的值,不存在不报错4dict.items()获得由键和值组成元组做为元素的列表5dict.keys()获得键的迭代器6dict.pop(k[,d])删除k(键)对应的”键:值”对7dict.update(adict)从另一个字典更新字典元素的值,如不存在,则添加此元素8dict.values()获得值的迭代器9dict.fromkeys(iter,value)以列表或元组中给定的键建立字典,默认值为value4、用户信息的保存三、总结通过本次任务的学习和实践,使我们熟悉了Python常用数据类型和内建结构数据类型,并且能够熟练地掌握列表、元组、字典的创建、访问和常用操作方法的实践操作。要保存多个用户的不同个人信息,可以首先建立一个空的列表备用,再逐一将不同用户的详细信息收集起来以键值对的方式保存到字典当中,最后使用列表append方法将字典追加到列表中保存即可。当然,上述方法是暂时的,待同学们学习了文件或数据库的操作以后,建议将重要信息保存到文件或数据库中。作业布置编写程序完成用户信息的保存教学反思同学们要强化个人信息自我保护意识,在生活、学习中养成保护个人信息的习惯。比如在向他人提供身份证等重要证件的复印件时,最好显著标识此复印件的用途;一些带有个人敏感信息的电子数据,如证件照片等,建议用完即删或者采用加密方式进行存储;快递单据涂抹掉关键信息后再丢弃等。情景二控制程序的结构主题流程控制序号2课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:能够根据实际需求熟练使用分支和循环语句完成程序编写。知识目标:理解顺序结构程序设计、代码的缩进的层次结构和、四种分支语句和循环语句。素质目标:接受新知识、自主学习的能力。教学重点分支和循环语句教学难点分支和循环语句的嵌套教学过程设计备注一、复习上一节上课内容并引出本节上课内容在编写程序过程中,如果需要根据用户的输入,灵活的调整哪些语句执行,哪些语句不执行又该怎么办呢?此时分支语句就非常重要了;然而有些问题仅仅通过分支条件语句还不能解决;有时为解决一个问题常常需要重复执行一个或多个操作,这该怎么办呢?这时就需要使用循环语句了。二、教学内容1、分支结构程序设计(1)单分支语句if表达式:语句块当表达式的值为True或者其它等价值时(非空非零),表示条件满足,则语句块将被执行,否则该语句块不被执行。表达式后用英文的冒号(:)结束,回车换行Python会自动缩进四个空格。接下来我们看一下实例,从键盘输入成绩,如果成绩大于等于60分则显示及格。score=float(input("请输入成绩:"))ifscore>=60:print("及格")单分支语句,只有一个if,当条件满足时,只能得到一个结果;如果想根据输入成绩的不同,返回不同的结果,我们就要使用双分支语句了。(2)双分支语句if表达式:语句块Aelse:语句块B当表达式的值为True或者其它等价值时(非空非零),执行语句块A,否则执行语句块B。也就是说:双分支语句执行时,只会选择一个分支执行。拓展单分支语句的功能,如果输入成绩大于等于60分则显示及格,否则显示不及格。score=float(input("请输入成绩:"))ifscore>=60:print("及格")else:print("不及格")如果有两个以上的条件,我们就要使用多分支语句了。(3)多分支语句语句格式if表达式A: 语句块Aelif表达式B: 语句块Belif表达式C: 语句块C ……else:语句块N语句执行说明首先计算表达式A,如果其值为True或者非空非零,则执行语句块A;否则计算表达式B,如果其值为True或者非空非零,则执行语句块B;否则计算表达式C,如果其值为True或者或者非空非零,则执行语句块C;以此类推,如果所有表达式计算的结果都为False(空值/0),则执行else后的语句块N。使用多分支语句将不同分数段分别对应五个不同的等级。如果输入成绩是90分及以上为优秀,80-89分为良好,70-79为中,60-69及格,60分以下为不及格。拓展单分支语句的功能,如果输入成绩大于等于60分则显示及格,否则显示不及格。score=float(input("请输入成绩:"))ifscore>=90:print("优秀")elifscore>=80:print("良好")elifscore>=70:print("中")elifscore>=60:print("及格")else:print("不及格")(4)分支嵌套语句嵌套就是一种包含关系,当外层的分支条件成立的情况下,再执行内层的分支条件,分支语句嵌套的格式如下图所示。首先计算表达式A,如果其值为True或者非空非零,则计算表达式B,如果其值为True或者非空非零,则执行语句块B,否则执行语句块C;如果表达式A计算的结果都为False(空值/0),则执行语句块D。使用分支嵌套语句来实现分数是90分及以上的,则显示优秀;如果大于等于60分,显示为合格;小于60分则显示不合格。score=float(input("请输入成绩:"))ifscore>=60:ifscore>=90:print("优秀")else:print("及格")else:print("不及格")2、循环结构程序设计(1)while循环语句的格式while表达式:语句块while循环语句可以解决程序中需要重复执行的操作,其循环执行的次数由循环条件决定,当循环条件满足时,重复执行某程序段,直到循环条件不成立为止。反复执行的程序段称为循环体,循环条件必须要在循环体中改变,否则可能会出现无限循环的结果。Python是区分大小写的,所以我们在写while的时候,注意都是小写字母,否则会出现语法错误。while循环语句首先计算表达式的值,如果表达式的值为True(非空/非0),则执行语句块,执行完后,再一次计算表达式的值,如果表达式的值仍然为True(非空/非0),则继续执行语句块;如果表达式的值为False(空/0),则结束while循环语句,语句执行流程如下图所示。实践案例1:任意输入一个正整数,求出1到该数的和,参考代码如下。#求1+2+……+n的和n=int(input("请输入求和的终止值:"))#初始化count=1sum=0#while循环求和并计数whilecount<=n:sum=sum+countcount=count+1#输出结果print("1+2+……+%d=%d"%(n,sum))举一反三:while循环语句打印九九乘法表。(2)for循环语句for<取值>in<序列或迭代对象>:语句块Aelse:语句块Bfor循环语句执行步骤:①从序列或迭代对象中依次取一个值;②执行语句块A;③不断重复①和②,直到序列或迭代对象全部取完。如果有else部分,则执行else语句块B,执行完毕,结束for循环,执行for之后的语句;如果没有else部分,则结束for循环,执行其后的语句。for循环中的range()函数参数说明:range(start,stop[,step])start:计数从start开始,默认从0开始;例如:range(5)等价于range(0,5)stop:计数到stop结束,但不包括stop;例如:range(0,5)是[0,1,2,3,4]没有5;step:步长,默认为1。例如:range(0,5)等价于range(0,5,1)如果有两个以上的条件,我们就要使用多分支语句了。实践案例2:for循环语句打印星号矩阵图,参考代码如下。#for循环语句打印星号矩阵图foriinrange(1,5):

forjinrange(1,6):

print('*',end='\t')

print()以上代码的运行结果是输出一个四行五列的星号矩阵图。* * * * * * * * * * * * * * * * * * * * 举一反三:for循环语句打印九九乘法表三、总结通过本次任务的学习和实践,使我们熟悉了四种分支语句、两种循环语句的使用格式和注意事项,并且能够熟练地使用流程控制语句来完成相应功能的开发。在通常情况下,分支语句只会执行其中的一个分支,当表达式的值为真时,执行该分支语句块,并且该语句块后的代码不再执行,跳出多分支语句,执行多分支语句后面的代码。而循环语句要特别注意,循环条件要能使循环最后结束,否则程序会一直运行下去,进入无限循环。当然,无限循环在日常生活中也是有需要的,比如坚强体育锻炼,让我们在享受体育乐趣的同时增强体质、锤炼意志,从而养成终身运动、终身学习的好习惯。作业布置for循环语句打印九九乘法表教学反思情景二控制程序的结构主题有趣的随机数序号3课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:熟练掌握导入模块的三种方式。知识目标:了解模块的功能和常用的模块。素质目标:接受新知识、自主学习的能力。教学重点导入模块的三种方式教学难点常用模块相关属性教学过程设计备注一、引出本节上课内容在程序开发过程中,通常都是由多名程序员分工协作一起完成程序的开发;Python在安装后就已经有了内置模板,并且还可以使用功能丰富的第三方开源模块,这使用编写代码不必从零开始,大大提高了代码的开发周期提高效率。二、教学内容1、导入模块Python中提供了以下三种方式导入模块:import模块名import模块名as模块别名from模块名import函数名/子模块名/属性在安装Python时就默认已经安装好的模块被称为“标准库”,也称为内建库,比如math模块。有人把它们称为Python自带的电池,意思是Python拥有无限能量。熟悉标准库的使用是编程必须的。math模块中有大量常用的数学计算函数,如三角函数(sin(),cos(),tan())、反三角函数(asin(),acos(),atan())、对数函数(log(),log10(),log2())等,还有数学常量如pi(圆周率)、e等。可以用dir(math)查看math模块中的函数(方法)与常量(属性)。Python自带的模块或者是第三方库,在安装时,系统自动将模块的存放路径记录在sys.path列表中。那么自己编写的模块,如何能让解释器知道路径呢?其实有两种方法。第一种方法是在sys.path列表里添加自己所写模块的路径;第二条方法是设置系统的环境变量,使其包含模块的路径。importsys #导入sys模块sys.path.append('d:\\py') #sys.path列表里追加.py文件的路径d:\\pyimportdemo #导入demo.py模块demo.myfunction(5) #文件名.函数名(参数)Python中的random模块用于生成随机数,它提供了很多函数。random.random()#用于生成一个0到1的随机浮点数:0<=n<1.0random.randint(a,b)#返回a,b之间的整数,注意:a,b均是整数,且a要比b小random.randrange([start=0],stop[,step=1]) #只能传入整数,且不包括stoprandom.choice(sequence) #从sequence(序列,列表、元组和字符串)中随机获取一个元素random.shuffle(x) #用于将列表中的元素打乱顺序random.sample(sequence,k) #从指定序列中随机获取k个不重复元素作为一个列表返回,sample函数不会修改原有序列。2、常用模块datetime模块定义了以下几个类,来处理时间和日期。(1)datetime.date:表示日期的类。常用的属性有year,month,day;(2)datetime.time:表示时间的类。常用的属性有hour,minute,second,microsecond;(3)datetime.datetime:表示日期和时间的类;(4)datetime.timedelta:表示时间间隔,即两个时间点之间的长度。calendar模块是一个日历模块,用于生成日历等。3、猜数字游戏(1)首先:导入随机模块importrandom(2)再将:姓名存入列表names=['张三','李四','王五','赵六','孙七','周八','吴九','郑十'](3)最后:使用流程控制语句实现随机点名使用while循环语句创建一个无限循环,在循环体中让用户选择是点名还是退出。当用户输入大写或小写的N时,使用break语句退出循环结束程序;当用户输入其它键时,使用随机模块.函数()输出随机点名姓名,参考代码如下:importrandomn=random.randint(0,100)foriinrange(5):temp=int(input("请输入你猜的整数:"))iftemp==n:print('恭喜你,猜中了!')eliftemp>n:print('猜大了')else:print('猜小了')else:print('游戏结束!')print('你要猜的整数是:{}'.format(n))>>>y=[1,'a','python',9.9]>>>type(y)<class'list'>三、总结通过本次任务的学习和实践,了解了什么是模块以及导入和使用模块的方法,掌握了break和continue语句的区别,并且能够熟练地根据相关要求选择该模块合适的函数来解决实际问题。内置模块可以极大地提升程序开发的效率;自定义模块将程序的各部分组件共用的功能提取出来放到一个模块中,其它组件通过导入的方式使用该模块,从而提高代码的重用性、易于功能扩展和维、有利于团队协作。作业布置编写程序实现抢红包功能教学反思情景二控制程序的结构主题学生信息管理系统序号4课时2教学手段多媒体、板书、实训室教学方法讲授法、演示法、案例法教学课型□理论□实训√一体化□(其它)教学目标能力目标:能够使用for循环和if分支语句结合起来实现学生信息的实现显示、增加、删除、修改、查询学生信息和退出管理系统六个模块相应功能。知识目标:了解简易系统的开发过程。素质目标:接受新知识、自主学习的能力。教学重点for与else,for与if语句配合使用教学难点教学过程设计备注一、引出本节上课内容编写一款面向过程简易学生信息管理系统,学生信息管理包括:显示学生信息、增加学生信息、删除学生信息、修改学生信息、查询学生信息和退出管理系统共六个功能选项。要求:每个选项之间可以来回自由地切换,根据用户的不同选择分别实现显示、增加、删除、修改、查询学生信息和退出管理系统六个模块相应功能。二、教学内容1、需求分析学生信息管理系统包括:显示、增加、删除、修改、查询和退出共六个功能选项。每个选项之间可以自由切换;每个选项独立完成如下功能。1.显示学生信息:是输出所有学生的相关信息,使用for循环遍历输出所有学生的信息即可;2.增加学生信息:可以将学生记录保存到列表当中,再使用append方法向列表尾部追加记录;3.查询学生信息:使用for循环遍历学生信息,再用if分支语句进行查询匹配,找到了则直接输入学生的相关信息,没有找到则输出查无此人;4.修改学生信息:首先进行查询,如果有匹配,则更新当前学生的信息;没有找到则输出查无此人;5.删除学生信息:首先进行查询,如果有匹配的学生记录,使用remove方法将其删除;没有找到则输出查无此人;6.退出管理系统:直接退出学生信息管理系统。2、重要知识点1.显示学生信息:while循环语句、if分支语句、for循环语句、range()函数、list[]列表、print()函数;2.增加学生信息:if分支语句、input()函数、dict{}字典、append方法、print()函数;3.查询学生信息:if分支语句、input()函数、for循环和else语句、list[]列表、print()函数、break语句;4.修改学生信息:if分支语句、input()函数、for循环和else语句、list[]列表、print()函数、break语句;5.删除学生信息:if分支语句、input()函数、for循环和else语句、remove方法、print()函数、break语句;6.退出学生信息:if分支语句、break语句。3、程序开发过程(1)操作选项显示以使用多条print()语句逐一输出上述每一行的内容;推荐将上述内容定义为多行字符串,(使用三个成对的单引号或者三个成对的双引号)以所见即所得的方式直接输出,参考代码如下。#学生信息管理系统操作选项infor='''学生信息管理系统v1.0******************************** 1.显示学生信息 2.增加学生信息 3.查询学生信息 4.修改学生信息 5.删除学生信息 0.退出管理系统********************************'''print(infor)(2)显示学生信息当前学生信息系统中没有存储任何内容,如果要显示学生信息,那么需要在程序代码中手动添加学生的信息。为了便于实现每个模块的具体功能,我们新建列表students来保存所有学生的信息,每个学生的信息以键值对的方式存储在字典中,有几个学生就有几个字典,各字典间之用逗号分隔,参考代码如下。students=[

{'stid':101,'stname':'张三','stage':18,'stgender':'male'},

{'stid':102,'stname':'李四','stage':19,'stgender':'female'},

{'stid':103,'stname':'王五','stage':20,'stgender':'male'}

]实现每个选项之间来回自由切换,肯定需要用到循环,在不知道循环

温馨提示

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

评论

0/150

提交评论