Python程序设计案例教程(微课版)教学教案_第1页
Python程序设计案例教程(微课版)教学教案_第2页
Python程序设计案例教程(微课版)教学教案_第3页
Python程序设计案例教程(微课版)教学教案_第4页
Python程序设计案例教程(微课版)教学教案_第5页
已阅读5页,还剩104页未读, 继续免费阅读

下载本文档

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

文档简介

第1章Python简介及环境配置参考学时2课时教学目标了解Python的优势及主要应用领域了解Python的下载与安装掌握Anaconda的下载与安装了解Anaconda常用组件的使用至少掌握一种安装Python第三方库的方法熟悉和掌握IDLE编辑器的使用熟悉PyCharm的使用教学重难点教学重点:Python的下载与安装教学难点:Python运行环境的搭建教学主要内容Python简介Python语言发展历程Python语言相较于其它编程语言的优势Python的用途Python的安装Windows下安装PythonLinux下安装PythonAnaconda的安装安装AnacondaAnaconda组件Python第三方库的安装源码安装包管理器Python集成开发环境Python集成开发环境IDLE集成开发环境PyCharm第一个Python程序的编写与运行交互式启动和运行方法文件时启动和运行方法教学的过程及方法Python简介Python语言简介Python语言发展历程Python简介Python语言相较于其它编程语言的优势语法简洁而清晰(代码的可读性高)Python语法要求强制缩进,用强制缩进来体现语句间的逻辑关系,提高程序的可读性.开发效率高由于它的简单明确,所以它也是开发效率比较高的一个编程语言。跨平台特性Python是真正可以做到跨平台的,开发的程序可以运行在windows、linux、macOS系统下,这是它的可移植性优势。大量丰富的库或者扩展Python常常被昵称为胶水语言,它能够很轻松的把用其它语言编写的各种模块(尤其是C/C++)联结在一起。利用丰富的第三方库,方便应用程序的开发。代码量少(提高了软件质量)使用Python语言写的代码量相对于别的语言要小很多,因此,它出错的几率也要小很多这在一定程度上提高了编写的软件质量。Python的用途Python的安装Windows下安装Python(1)打开官网(www.P),选择导航栏中“Download”菜单中的“Windows”菜单进入下载界面(2)下载电脑对应版本(3)下载安装文件放在计算机的任意位置均可(4)双击下载的安装文件进行安装(5)安装完成后,在Windows的“开始”菜单中就可找到Python程序『注意』64位的版本不能安装在32位的系统上,但32位版本既可以安装在32位系统上,也可以安装在64位的系统上。Linux下安装Python(1)下载、解压tarxvfPython-3.6.0al.tar.xz(2)编译安装(3)进入目录./configure(4)测试Anaconda的安装安装Anaconda(1)下载Anaconda(2)安装AnacondaAnaconda组件(1)启动Python自带的IDLE(2)在Windows命令提示符下启动Python【注意】在安装“Anconda”之前需要卸载之前已经安装的任何Python解释器,包括Python2.x或者Python3.x版本等,通通都要卸掉,只用安装好的“Anconda”作为默认的Python解释器Python第三方库的安装源码安装包管理器(1)使用pip命令进行安装安装::\>pipinstallflask卸载::\>pipuninstallflask查看所有库::\>piplist(2)使用conda命令进行安装安装::\>condainstallflask卸载::\>condauninstallflask查看所有库:condalistPython集成开发环境Python集成开发环境IDLE集成开发环境PyCharm(1)下载PyCharm集成开发软件(2)双击下载的安装包进行安装(3)自定义PyCharm安装路径(4)其他选项保持沉默第一个Python程序的编写与运行交互式启动和运行方法(1)启动Windows命令行窗口后输入“Python“或者”ippython“进入相应的交互方式;(2)启动安装的IDLE来进入Python交互方式(3)启动Anaconda下相应组件进入Python交互方式文件时启动和运行方法(1)运行Python程序的第一种方法打开IDLE,选择文件菜单下的新建文件选项(File-->NewFile),或者按快捷键“Ctrl+N”,打开一个新的程序编辑窗口『注意』该窗口不是交互模式,它是一个具备python语法高亮辅助的编辑器,可以在此编辑窗口中编写代码,并以文件的方式保存,文件的扩展名为“.py”。运行方法:代码编写完成后,选择运行菜单下的运行模块选项(Run-->RunModel)运行该程序文件,也可以按快捷键“F5”来运行程序文(2)运行Python程序的第二种方法例如文件位置:D:\PythonTest\hello.py,运行“cmd.exe”时请“以管理员身份运行”来启动进入“hello.py”文件所在目录,通过命令:\>pythonhello.py(3)利用PyCharm来编写和运行程序双击桌面PyCharm图标,运行PyCharm选择是否导入开发环境配置文件阅读协议并同意选择输入激活码激活软件选择IDE主题与编辑主题,选择主题后需要重新启动IDE选择“CreateNewProject“自定义项目存储路径和项目名称,IDE默认会关联Python解释器,单击“Create“按钮在项目名上单击鼠标右键,在弹出的快捷菜单中选择“New“—”PythonFile“,创建Python文件在输入框中输入文件名后按Enter键在新文件中输入代码单击右上角绿色三角形,运行程序

第2章Python基本语法参考学时6课时教学目标掌握两种注释方式掌握标识符命名规则掌握python的33个保留字掌握python赋值逻辑了解垃圾回收机制了解python的共享引用掌握输入输出函数的具体使用掌握python程序的书写规范掌握使用字符串类型的format方法实现字符串的格式化了解python中英文混输格式对齐问题教学重难点教学重点:Python的基本语法教学难点:熟练掌握并遵循Python语法进行程序编写教学主要内容本章知识框架如下:注释单行注释多行注释标识符与保留字python赋值语句Python的其它赋值方式序列赋值多目标赋值增强赋值Python的垃圾回收机制Python的共享引用输入函数与输出函数input函数eval函数print函数Python程序书写规范用分号“;”分隔一行中多条语句续行符以及隐式行连接符的使用代码行缩进字符串字符串的定义转义字符Format()格式化字符串字符串格式化的“槽”机制字符串格式化输出数字的格式化输出Python中英文混输格式对齐问题教学的过程及方法注释1.注释的作用①对代码解释说明;②方便日后检查和修改代码;③暂时屏蔽部分程序段2.单行注释和多行注释单行注释通常以#开头,#号后的内容执行时不显示。多行注释使用三个单引号(’’’)或者三个双引号(”””)注释『注意』多行注释时,一定要保证前后定界符一致标识符与保留字1.标识符①定义:用户编程时自定义的一些符号和名称②对比讲解数学中的变量和Python中的变量数学中的变量:取值可发生变化的量Python中的变量:是程序中用于保存和表示数据的符号③命名规则python语言标识符的命名规则:标识符由字母、数字、下划线或汉字组成,且不能以数字开头,长度任意。具体地说:(1)标识符可以使用大小写字母、数字、下划线或汉字等字符及其组合来命名。R、r、S、ls_1、tp123为合法的标识符。(2)标识符的首字符不能是数字(如果使用数字开头,不能区分它所代表的是数值还是变量),标识符的中间不能出现空格,123Python、Python123等不符合标识符的命名规则。(3)标识符对大小写敏感,a与A是不相同的标识符。(4)标识符还不能是python的保留字。2.保留字①定义:被编程语言内部定义并保留使用的标识符,又称为保留字,不能用作函数名、变量名或者任何其他标识符名称。②33个保留字'False','None','True','and','as','assert','async','await','break','class','continue','def','del','elif','else','except','finally','for','from','global','if','import','in','is','lambda','nonlocal','not','or','pass','raise','return','try','while','with','yield'python赋值语句①pythond的赋值方式:基本赋值、序列赋值、多目标赋值、增强赋值或参数化赋值方式②语法格式:<变量>=<表达式>其作用是将右端表达式的值赋值给左端的变量,这里等号“=”的含义是赋值③赋值过程python中的变量用于指向一个存储在内存中的数据,变量只表明存在引用关系,而不是特定存储单元的名称Python的其它赋值方式序列赋值①定义:序列赋值又称序列解包赋值,以逗号隔开,完成多个变量的赋值操作,如果多个单一赋值语句在功能上表达了相同或相关的含义,或者在程序或者能够属于相同的功能,这时可以考虑采用序列赋值的方式②语法格式:<变量1,变量2,...,变量n>=<表达式1,表达式2,...,表达式n>多目标赋值①作用:将同一个值赋值给多个变量②语法格式:<变量1>=<变量2>=...=<变量n>=<表达式>增强赋值①定义:增强赋值将二元表达式计算和赋值功能结合起来的一种赋值方式②作用:将某个变量本身原有值的基础上重新赋值替换掉它原有值③增强赋值操作符Python的垃圾回收机制①垃圾回收机制②引用计数每个对象都维护一个引用计数字段,用来记录当前对象被引用的次数引用计数就是追踪到底有多少个引用指向这个对象③对象的引用计数器+1情形对象被创建:a=14对象被引用:b=a对象被作为参数,传到函数中:func(a)对象作为一个元素,存储在容器中④对象的引用计数器-1情形当该对象的别名被显示销毁时:dela当该对象的别名被赋予新的对象:a=26一个对象离开它的作用域当该元素从容器中删除时,或者容器被销毁时⑤作用:它侦查到如果在特定时间内没有变量引用某一个对象,这个对象将被回收,释放它所占用的资源⑥目标:Python中未被引用的对象⑦计算方法:根据引用计数得到结果进行推断Python的共享引用①定义:“共享引用”指的是多个变量引用同一个内存对象,通过id检查的内存地址相同注意:必须通过id()函数或者is操作符来判断是否属于共享引用,不可直接通过面值相等来判断是否属于共享引用整型数值的字面值大于255或者是较长的字符串时,即便不同变量引用相同字面值,但分配的内存地址不相同输入函数与输出函数①输入输出简介输入:从外部设备输入到计算机输出:把运算后的结果等输出给用户input函数作用:Python提供的内置函数,从标准输入中读入一个字符串格式:input(<提示信息>)eval函数作用:将字符串当成有效的表达式来求值并返回运算结果格式:eval(<字符串表达式>)print函数作用:打印输出格式:print(*objects,sep='',end='\n’)*objects:可以一次输出多个对象,多个对象之间用逗号分隔sep:间隔多个对象,默认值为一个空格end:添加在文本末尾的字符串,默认值为换行符\nPython程序书写规范用分号“;”分隔一行中多条语句续行符以及隐式行连接符的使用代码行缩进Python程序的代码块采用缩进来表示代码之间的包含和层次关系。字符串字符串的定义①定义:用两个单引号或两个双引号或两个三引号括起来的零个或者多个字符序列②字符串的索引正向递增方向递减③字符串切片字符串区间访问,采用[N:M]格式,N和M为字符串的索引序号转义字符format()格式化字符串①基本格式:<模板字符串>.format(<逗号分隔的多个参数>)②作用:调用format()方法后返回一个新的字符串『注意』format()点前面一定得是一个字符串或字符串变量或字符串表达式③format()方法的简单运用示例:张三的数学成绩:89字符串格式化的“槽”机制①“槽”用大括号表示②“槽”机制省略大括号里的序号:如果format()方法参数表里的参数的出现位置与<模版字符串>中槽的位置是一对一,则省略大括号里的序号大括号填写参数序号:如果某个输出项出现在多个位置上,则在大括号中指定输出参数的的序号,按照序号将参数替换到相应的槽位置上大括号里填写参数名称:在大括号里填写参数名称,通过关键字参数来获取参数的值混合使用①填写参数序号+填写参数名称『注意』关键字参数必须位于参数表的最后②省略参数序号+填写参数名称『注意』关键字参数必须位于参数表的最后字符串格式化输出①基本格式:<模板字符串>.format(<逗号分隔的多个参数>)②<宽度>:指当前槽设定输出字符的宽度③<对齐>:指参数在<宽度>内输出时的对齐方式<、>和^三个符号表示左对齐、右对齐和居中对齐④<填充>:指参数在<宽度>内除了参数外的字符采用什么方式表示,默认空格填充(用于填充的只能是单个字符)数字的格式化输出①千位分隔符逗号(,)②使用精度指定输出小数的位数③指定宽度输出数值④指定数据输出类型Python中英文混输格式对齐问题文字符串长度如果没有达到制定输出宽度时,采用西文空格进行填充,而西文空格和中文空格长度不同,这就导致了输出时未对齐解决:chr(12288)—中文空格字符进行填充

第3章基本数据类型参考学时3课时教学目标掌握整数类型、浮点类型和复数类型以及数值运算操作符、数值运算函数和类型转换函数了解整数、浮点数和复数之间存在一种逐渐扩展的关系了解bool类型的本质掌握各种数据类型的特殊值转换为布尔类型后取值为False掌握导入math库的方法了解math库提供的数学常数、数值函数和幂对数函数等教学重难点教学重点:Python的基本数据类型教学难点:掌握并运用Python的基本数据类型规则进行程序编写教学主要内容本章知识框架如下:数据类型概述整数类型浮点数类型复数类型数值类型的操作数值运算操作符数值处理函数布尔类型math库教学的过程及方法数据类型概述1.定义:一个值的集合以及定义在这个值集上的一组操作之总称2.Python具有动态语言的特点静态类型:在申明变量时确定好该变量的数据类型动态类型:变量本身没有类型的约束,变量类型取决于关联的对象的类型3.type()函数:快速检测出某一个对象的实际类型整数类型1python整型的精度是不受语言本身限制的,可以使用python程序处理非常大的整数,由内存大小或者CPU的运算范围来决定整数的范围2.pytho整数类型进制表示浮点数类型1.定义:同数学中的实数概念一致,表示带有小数点及小数的数字2.表示方法3.查看python解释器当前所使用的浮点数及各项参数>>>importsys>>>sys.float_info4.注意事项Python中浮点数运算结果中最长只能输出17个数字,并且只有前15个数字时确定正确的计算浮点数时,大多数情况都能得到所期望的结果也会有特殊情况5.decimal模块类:Decimal:提供了一种精度更高的处理浮点型数字的机制注意:“decimal”模块的”Decimal”类传参数时一定是以字符串的形式进行传参使用getcontext().prec参数自定义浮点数精度的位数复数类型复数的组成:复数由实部与虚部构成,表示为a+bj(J)的形式,后缀“j”或“J”表示虚数部分,a与b表示实部与虚部。注意:计算机中复数类型的实数部分和虚数部分的数值均为浮点数类型数值类型的操作数值运算操作符【例】回文数判断。从键盘输入5位数,请编写程序判断这个数字是不是回文数数值处理函数类型转换函数int(x):将x转化成整数,x可以是浮点数或者是由数字构成的字符串float(x):将x转换为浮点数,x可以是整数或字符串complex(re[,im]):生成一个复数,实部为re,虚部为im。re可以是整数、浮点数或者字符串,im可以是整数或者浮点数,但不能为字符串布尔类型1.定义:Python中的布尔类型,表示事物的两种状态,真(True)或假(False)2.bool类型与int类型的转换bool型的True的本质和int型的1一致,False和0一致3.注意事项bool型的True和False只和int型的1和0对应可以直接把bool型的True或False当作1或0来使用bool(obj):可以将某个值转换成布尔型的结果4.各种数据类型的特殊值数值0、0.0、空字符串’’、空列表[]、空元组()、空字典{}、空集合set()等都当作”False”math库1.导入方法2.数学常数3.数值函数4.幂对数函数全局pow()和math.pow()的区别Python解释器内部表示浮点数时,存在一个小数点后若干位的精度尾数,当进行浮点数运算时,这个精度可能会影响输出结果,因此,建议使用math库提供的函数进行浮点数运算。

第4章 程序控制结构参考学时6课时教学目标理解三种基本程序控制结构,能恰当选择单分支、双分支和多分支编写程序理解for-in遍历循环和和while条件循环的差异掌握continue语句和break语句在循环中的使用方法了解for-in-else和while-else结构的使用方法和应用场合掌握嵌套循环的设计思路掌握random库的常用函数的调用方法教学重难点教学重点:能够使用三种基本程序结构解决基本的编程问题教学难点:理解随机种子数的含义,能用random解决实际问题,如生成随机短信验证码和随机密码教学主要内容本章知识框架如下:顺序结构分支结构单分支结构双分支结构多分支结构for-in循环语句while循环语句continue语句与break语句for-in-else和while-else语句嵌套循环random库教学的过程及方法顺序结构1.基本原理:代码的执行顺序和程序代码编写的顺序保持一致2.结构流程图3.实质:代码的执行顺序和程序代码编写的顺序保持一致分支结构1.定义:程序根据条件判断结果而选择不同执行路径的一种运行方式2.算术运算符3.比较运算符4.逻辑运算符单分支结构1.单分支结构的语法格式为:if<条件>:<语句块>说明:if所在行的末尾有一个英文冒号,然后换行书写若干语句形成语句块,含义是当条件成立时执行<语句块>的所有语句。<语句块>的每行语句必须有一次缩进。2.if语句的流程图当程序执行到if语句时,分析计算“条件”的结果,如果条件为真,则执行<语句块>,然后执行if语句的下一条语句,如果条件为假,则不执行<语句块>,直接转到if语句的下一条语句执行。双分支结构1.if-else语句的语法格式为:if<条件>:<语句块1>else:<语句块2>说明:if所在行末尾有一个“冒号”,else后面也有一个“冒号”。<语句块1>和<语句块2>的所有语句需要使用一次缩进。2.执行流程图多分支结构1.多分支结构语法格式为:if<条件1>:<语句块1>elif<条件2>:<语句块2>…else:<语句块N>2.多分支结构流程图for-in循环语句1.遍历循环的语法格式为:for<迭代变量>in<可迭代对象>:<循环体>执行for-in循环语句时,迭代变量依次从可迭代对象中取出元素,当所有元素从迭代对象取出后,循环语句结束。2.range()函数使用range()函数可以生成一个数值序列,返回的是一个可迭代对象,其类型是range,是一个对象。3.range()三种使用方式4.注意事项:for-in循环:当遍历完迭代对象后就结束,循环次数已知;“for-in”关键字“in”后面一定要跟一个可迭代对象while循环语句1.while循环与for…in…循环2.while循环的语法格式:while<条件表达式>:<循环体>当条件表达式为真,执行循环体里的操作3.讲解实例:计算累加和的值:1+2+3+…,直到累加和的结果达到或超过100时结束累加continue语句与break语句1.continue语句与break语句continue:仅结束本次循环,不跳出循环本身break:结束整个循环2.讲解实例:计算1-5之间偶数之和for-in-else和while-else语句for-in遍历循环for<变量>in<迭代对象>:<语句块1>else:<语句块2>while循环while<条件表达式>:<语句块1>else:<语句块2>注意1.循环语句else分支中的<语句块2>只在正常结束循环后才执行2.因为break或者return而退出的循环,不会执行else分支中的语句嵌套循环for-in遍历循环while循环random库伪随机数与计算机模拟计算机产生的每一个随机序列都需要一个输入信息作为随机种子,默认情况下随机种子来自于系统时钟。设置种子random.seed():seed()方法改变随机数生成器的种子相同种子:相同种子产生的随机数相同不同种子:不相同种子产生的随机数不相同random.seed():使用随机数种子的好处是可以复现虽随机数程序的运行结果random库的常用函数基本随机函数扩展随机函数函数功能说明及示例uniform(a,b)获取随机浮点数随机生成[a,b)或者[a,b]之间的一个随机小数。当a!=b时,生成介于两者之间的一个浮点数,当a==b时,则生成的浮点数为a>>>

random.uniform(10,100)22.91618932450376randint(a,b)获取随机整数随机生成闭区间[a,b]之间的一个整数>>>

random.randint(10,100)56randrange(a,b[,k])获取随机整数随机生成[a,b)之间以k为步长的整数序列中的一个整数,包含a但不包含b。如果不指定k,默认步长为1。也可以使用一个参数b,此时随机生成的整数范围为[0,b),包含0但不包含b>>>

random.randrange(1,7,2)

#在1,3,5中随机取一个数5>>>

random.randrange(1,7)

#在1~6中随机取一个数3>>>

random.randrange(7)

#在0~6中随机数取一个数1choice(seq)从序列随机取出元素从非空序列中随机取出一个元素,非空序列可以是列表、元组和字符串>>>

random.choice("student")'s'#随机从列表中取出一个元素>>>

random.choice([1,2,3,4,5,6,7,8,9])5shuffle(list)打乱列表中元素的顺序该函数的返回值是None。函数的参数为列表,它将列表中的元素打乱顺序。该函数是直接在原列表上改变元素的顺序>>>ls=[1,2,3,4,5,6,7,8,9]>>>print(random.shuffle(ls))None>>>print(ls)[2,5,4,9,3,6,8,1,7]输出列表ls发现它里面的元素已经改变了排列顺序sample(seq,k)从序列seq中随机取出k个元素该函数的返回值为列表。它从指定的序列(列表、元组或字符串)中随机选择k个元素形成新的列表返回,该函数不会修改原序列>>>old_tp=(1,2,3,4,5,6,7,8,9,10)#定义了一个元组#从元组old_tp中随机抽取5个不重复的元素形成列表并返回,该函数并不改变原序列本身>>>new_ls=random.sample(old_tp,5)>>>print(old_tp)(1,2,3,4,5,6,7,8,9,10)>>>print(new_ls)

[7,8,2,6,5]random库的随机函数使用要点能够利用随机数种子产生“确定”的伪随机数seed()生成种子,random()函数产生随机数能够产生随机整数,randint(a,b),randrange(a,b,[,k])能够对序列类型进行随机操作实例实例1:随机验证码方法一分析:生成4位纯数字验证码,可以使用random库提供的函数randint(0,9),调用一次产生一个0-9范围的数字,重复4次调用random.randint(0,9)得到四个随机数字,最后把这4个数字拼接起来就得到了4位数字验证码。数字拼接可以先将每个数字转换成字符串类型,然后通过字符串连接操作来完成。程序代码如下:importrandomcheck_code=''foriinrange(4):code=str(random.randint(0,9))check_code+=codeprint(check_code)方法二分析:可以将4位纯数字随机验证码看作一个4位随机整数,而4位随机整数的取值范围为在1000-9999之间,因此,只需调用函数random.randint(1000,9999)一次就能得到四位数字验证码。程序代码如下:importrandomcheck_code=random.randint(1000,9999)print(str(check_code))实例2:随机密码random库:sample()函数;shuffle()函数String模块string.asscii_uppercasestring.ascii_lowercasestring.digitsstring.punctuation由于密码中必须包含大小写字母、数字以及标点符号,首先,可通过string模块的ascii_uppercase属性获取全体大写英文字母,ascii_lowercase属性获取全体小写英文字母,digits属性获取所有数字字符和punctuation属性获取所有标点符号。再通过input函数输入密码的长度,假设用变量n保存。由于生成的密码必须包含大、小写字母、数字字符以及标点符号,因此,除去这四种字符各至少1个之后,另外还需生成(n-4)位的密码。因为没有规定每种字符最多只能包含多少个,所以可以这样调用随机函数random.randint(1,n-3)来产生大写英文字母的个数,记入变量len_upp中(第二个参数为n-3的原因是为小写字母、数字字符以及标点符号各预留了1个长度,这样,大写字母的最多个数为n-3)。再次调用random.randint(1,n-len_upp-2)来产生小写英文字母的个数,保存到变量len_low之中(小写字母的个数为n减去已经生成的大写字母个数len_upp,再减去2,2是为数字字符和标点符号预留的最小长度),使用类似方法的可以得到数字符号和标点符号的个数。在确定了构成密码的大、小写字母、数字字符以及标点符号的个数之后,接下来使用random库的sample函数从前述string模块的相关属性中随机抽取指定个数的字符生成字符列表。连续四次使用sample函数,可获取分别由大写字母、小写字母、数字和标点符号构成的四种随机字符列表,将这些列表拼接起来形成一个完整的列表。然后对拼接成的列表使用函数shuffle打乱其中字符的排列顺序。最后利用字符串的join方法将打乱后的字符列表的所有字符拼接成一个字符串,就得到满足需求的随机密码。

第5章海龟绘图参考学时4课时教学目标理解绘图坐标系掌握turtle库的画笔控制函数(改变画笔形状、速度,设置画笔粗细、颜色、抬起放下画笔、改变画笔方向、设置封闭图形颜色等)、画笔运动函数(绘制直线段、绘制弧线或者正多边形)和更多绘图控制函数(设置图形窗口标题、清空绘图窗口,输出文本内容到当前画笔处等)了解利用Turtle类、Pen类生成对象绘制图形的方法了解利用Screen类进行窗口控制、动画控制以及屏幕事件。教学重难点教学重点:掌握Turtle类的基本使用规则教学难点:能够使用Turtle类完成简单图形绘制教学主要内容本章知识框架如下:理解海龟绘图坐标系利用Turtle类完成图形的绘制直接调用turtle库的相关函数完成图形的绘制海龟绘图基础知识设置绘图窗体大小screensize函数和setup函数的异同点turtle库三大类函数画笔控制函数画笔运动函数全局控制函数教学的过程及方法理解海龟绘图坐标系1.turtle绘图坐标系利用Turtle类完成图形的绘制直接调用turtle库的相关函数完成图形的绘制海龟绘图基础知识设置绘图窗体大小画布是turtle为我们展开用于绘图的区域,即turtle的绘制窗体,可以设置它的大小和初始位置,画布中最小单位是像素(1)screensize函数screensize函数的调用格式为:turtle.screensize(width=None,height=None,bg=None)(2)setup函数setup函数的调用格式为:turtle.setup(width=0.5,height=0.75,startx=None,starty=None)screensize函数和setup函数的异同点turtle库三大类函数画笔控制函数1.改变画笔形状2.改变画笔速度3.改变画笔粗细4.改变画笔颜色5.进行颜色模式的设置6.改变画笔方向画笔运动函数1.定义:通过操纵海龟在绘图窗口中的行进以及行进方向,可以完成图形的绘制。控制海龟前进时,海龟可以走直线,也可以走曲线2.turtle画笔运动函数3.调用格式turtle.circle(radius,extent=None,steps=None)turtle.circle(radius)绘制半径为radius的圆,r如果radius为正,则圆心在行进方向的左边;如果为负,则圆心在行进方向的右边turtle.circle(radius,extent)绘制一段圆弧,extent为圆弧对应的圆心角的度数turtle.circle(radius,steps=n)由于圆是由内切正多边形来近似的,因此,steps表示圆的内切正多边形的边数,n为整数turtle.circle(radius,extent,steps=n)绘制一段圆弧,这段圆弧由steps条线段来近似全局控制函数1.调用格式实例:绘制爱心图形。利用turtle库绘制如下所示图形。讲解时,重点在于对图形构成的分析,其次是使用相关知识点解决实际问题。分析:该案例图形由两部分组成:(1)心形图;(2)文本内容。(1)心形图的绘制。直接观察心形图的构成有点抽象,可以将这颗心进行如下分割:分割之后容易看出,整个图形由左边的一个半圆、右边的一个半圆和中间的一个正方形构成,并且两个半圆的直径和正方形的边长相等。以绘图坐标系为参照,可以看出整个心形图相对于x轴向左旋转了45°,设正方形的边长为200像素,则两个半圆的半径为100像素。注意右边半圆绘制后,画笔笔尖方向需要右转90°。

第6章函数参考学时5课时教学目标理掌握自定义函数的定义和调用掌握调用函数的执行过程以及调用函数时参数的传递方式掌握lambda函数的定义和使用。熟悉位置参数、关键字参数、默认参数和组合参数的使用了解可变参数的使用了解解包元组或列表和解包字典了解变量的作用域以及函数的递归教学重难点教学重点:掌握函数的使用规则教学难点:能够运用函数完成程序编写教学主要内容本章知识框架如下:函数的定义及调用定义自定义函数函数调用示例调用函数的执行过程参数传递位置参数关键字参数默认参数可变参数组合参数解包参数解包元组或列表解包字典lambda函数变量的作用域递归函数应用实例实例1:七段数码管的数字表示实例2:日期数据的七段数码管表示实例3:汉诺塔(Hanoi)问题教学的过程及方法线上:函数的定义及调用等基本概念由学生通过线上资源自主学习完成。线下:教师主要讲授参数传递相关知识点以及实例。函数的定义及调用1.函数分类定义自定义函数语法格式:def<函数名>([参数表]):<函数体>注意事项:1.函数使用关键字(也称为保留字)def声明,“def”只能是小写字母,不能为大写;2.函数名必须使用有效的标识符,只能以字母或下划线开头;3.参数表中的参数称为形式参数,多个参数之间用逗号隔开,可以没有参数,此时称为无参函数,即使没有参数,小括号也不能省略;4.函数可以使用return返回值;5.对函数功能的注释,请区别’’’…’’’与#注释;6.函数体内的内容不可为空,若要定义一个什么都不做的空函数,可用pass语句调用函数的执行过程1.语法格式:函数名([实参列表])2.参数传递形式3.执行过程参数传递位置参数:调用函数时,实参默认根据函数定义的形参位置来传递关键字参数注意:1.只用部分关键字传参,注意参数的位置顺序;2.关键字参数必须放在位置参数之后默认参数:默认参数在定义函数时为参数提供默认值注意:默认参数后不能再出现非默认参数可变参数1.定义:不确定调用的时候会传递多个实参带一个星号(*)的形参带两个星号(**)的形参组合参数注意:默认参数一定要用不可变对象,如果是可变对象,运行会有逻辑错误解包参数解包元组或列表将元组或列表作为实参进行传参将元组或列表的每一个元素对应一个位置参数一定要保证元组或者列表的大小和位置参数的个数相等解包字典lambda函数保留字lambda来定义:定义方式不需要指定函数名,叫做匿名函数,也叫做lambda函数变量的作用域1.定义2.作用域的类型递归函数1.定义2.基本思想:把规模大的问题转化为规模较小的相似的子问题来解决3.递归满足的三大条件:1.递归必须得有一个明确的终止条件;2.该函数所处理的问题规模在递减;3.这个转化必须是可解的4.递归与循环应用实例实例1:七段数码管的数字表示主要讲解算法思路:用数码管组成的数字是由七段拼接而成,每段长度相同,根据每段亮或者不亮从而组成0-9的十个数字。线段使用turtle库的fd函数来绘制,亮的线段直接绘制,不亮的线段让画笔抬起来后绘制,实际上就是不绘制。1.七段数码管:由7个长条形的发光二极管组成绘制每一个数字时,从七段线条中任意一段开始进行绘制都是可以的,但为了减少画笔来回移动的次数,类似于写连笔字,希望从某处开始,一笔完成一个字的书写,即确定绘制顺序。2.绘制顺序3.完成代码编写实例2:日期数据的七段数码管表示由于日期数据的一般表示形式为“年-月-日”,为了便于操作,假设这里也是按照这样的形式来输入日期数据,年用4位数字表示,月和日都用2位数字表示。绘制日期数据,只需要先把输入的形如“年-月-日”的日期通过字符串的切片操作,转变成一个没有短横线的只由数字构成的字符串,其余的绘制操作就和例6-21绘制整数的七段数码管表示的程序完全相同。输入当前日期数据,绘制日期数据的七段数码管表示。实例3:汉诺塔(Hanoi)问题分析:汉诺塔问题转换成一个计算机解决的问题就是:有A、B、C三根柱子,如何把A上面的n个盘子借助B移动到C上,要求满足:(1)一次只能移动一个盘子;(2)移动过程中,大盘子永远不能放在小盘子上面。解决该问题的算法思路如下:(1)借助C移动A上的最上面的n-1个盘子到B;(2)将A上的最大那个盘子直接移动到C;(3)借助A将B上的n-1个盘子移动到C。综合以上分析,得到解决汉诺塔问题的递归算法。

第7章组合数据类型参考学时10课时教学目标掌握元组、列表、集合、字典的声明以及转换函数掌握元组的常用操作了解列表的特性,掌握列表的基本操作掌握字符串常用方法了解字典的特性,掌握字典的创建方法、字典元素的访问操作和字典常用方法掌握列表推导式的两种语法格式了解生成器的最简单生成方法以及获取生成器每个元素的方法掌握和熟悉英文词频统计的思路了解和掌握jieba库常用分词函数,掌握和熟悉中文词频的统计思路掌握和熟悉加解密程序的编程思路教学重难点教学重点:1.掌握元组、列表、集合、字典的声明以及转换函数;2.掌握各种数据类型的基本操作;3.了解和掌握jieba库等常用函数教学难点:熟练区分Python数据类型并遵守其使用规则进行程序编写教学主要内容本章知识框架如下:教学的过程及方法线上:组合数据类型、序列类型等基本概念由学生通过线上资源自主学习完成。线下:教师主要讲授元组、列表、字典的常用操作以及应用实例。组合数据类型概述定义:能够将多个同类型或不同类型的数据组织起来,通过单一的表示使得对数据的操作更加有序、更容易。组合数据类型类:序列类型、集合类型和映射类型序列类型序列:将一系列对象并列放在一起形成一个集合来进行操作,或者形成数据结构可变序列和不可变序列可变序列:序列中的元素支持在原位置被改变不可变序列:不允许在原位值改变某个元素或者对象的值序列访问方式序列类型的通用操作符和函数元组元组的基本特性元组是包含任意对象的有序集合。通过下标索引访问元素。元组是一个长度固定、元素类型可以不相同,元素还可以为其它序列,可任意嵌套。元组的声明空元组的声明定义只含一个元素的元组定义元组时可以省略圆括号,但不建议使用元组转换函数tuple转换函数“tuple()”将某个特定的可迭代序列(请注意:是可迭代序列)元组的常用操作常用操作注意事项元组不能被修改通过多级索引获取信息用于函数返回多个值用于多变量同步赋值用于循环遍历使用tuple的好处集合集合:1.包含0个或多个数据项的无序组合;2.集合中元素不可重复,只能是固定数据类型哈希运算哈希运算:Python提供了一个内置的哈希运算函数hash(),它可以对固定数据类型产生一个哈希值,用整数表示能进行哈希运算的数据类型:整数、浮点数、字符串、元组;不能进行哈希运算的数据类型:列表、字典、集合『说明』每次启动IDLE调用hash()函数,即使对同一个数据进行哈希运算,其结果也可能不同创建集合空集合的创建集合用大花括号”{}”表示,空集合只能利用set()来完成,不能直接使用{}来创建空集合非空集合的创建对于一个由若干元素构成的非空集合,可以直接用大花括号来表示,用赋值语句生成一个集合集合的作用集合中的元素不可重复,使用集合类型过滤掉重复的元素使用赋值语句生成集合时可以去掉重复元素使用set()函数生成一个集合,返回一个无重复且排序任意的集合集合类型提供的操作符和函数集合类型的通用操作符集合类型的操作函数或方法列表列表是一种可变序列类型,也是python中使用频率最高、最通用的数据类型。它没有长度限制,可自由增删元素、修改元素,使用相当灵活。定义列表列表使用一对中括号“[]”来定义,多个元素之间用逗号“,”分隔,其中的元素可以是同一种数据类型,也可以是不同的数据类型。列表的特性列表类型转换函数list作用:将某个特定的可迭代序列转换为列表列表基本操作序列通用操作可变序列及列表的通用操作Ⅰ可变序列及列表的通用操作Ⅱ列表特有的操作排序操作要求序列中的元素必须具有相同的类型方法”.sort()”与全局函数”sorted()”的区别内置字符串方法字符串处理函数len(x):返回字符字符串x的长度str(x):返回任意类型x对应的字符串形式hex(x):返回整数x对应十六进制数的小写形式字符串oct():返回整数x对应八进制数的小写形式字符串chr(x):返回Unicode编码x对应的单字符ord(x):返回单字符x表示的Unicode编码字符串序列基本操作符序列类型的通用操作符字符串切片操作内置字符串处理方法字符串大小写转化类字符串替换方法s.replace()字符串的拆分与连接字符串的其他操作String模块-字符串常量字符串常量:由字母、数字、特殊符号构成string.ascii_uppercase方法string.ascii_lowercase方法string.ascii_letters方法string.digits方法string.octdigits方法string.hexdigits方法string.punctuation方法string.whitespace方法string.printable方法Formatter类Template类capwords()字典字典的定义字典用一对花括号“{}”来定义,其中的每个元素是一个“键值对”,键和值之间用英文冒号“:”分隔,多个元素之间用英文逗号“,”分隔。字典特性(1)字典是通过键访问对应的值(2)字典是“键值对”的无序集合(3)字典长度可变创建字典{key1:value1,key2:value2,…,keyn:valuen}键和对应值之间用冒号隔开左边是键,右边是对应值每个项目之间用“,”分隔创建一个空字典创建包含若干元素的字典访问字典元素字典:一个无序的结构,对字典的访问操作是通过键而不是下标索引来进行字典常用方法字典常用方法:使用help(dict)进行查阅学习函数名作为字典键对应的值get()方法的使用:访问的键不在,也不会抛出异常,而且返回一个‘None’keys()方法的使用items()方法的使用:一次获取字典所有的键值对信息copy()方法的使用一般不要使用赋值的方式来将一个字典赋值给另外一个字典,因为这时它们指向的是同一个对象,对一个字典进行的操作会影响另一个字典里的元素update()方法的使用列表推导式生成器:利用其它可迭代序列创建新列表的一种方法创建生成器创建generator:把列表生成式的中括[]改成小括号()获取生成器的每个元素一旦生成器的值用完了,再次调用next()就会出现StopIteration异常jieba库安装jieba库:pipinstalljieba查看安装情况:piplistjieba库分词原理:依靠中文词库利用一个中文词库,确定汉字之间的关联概率汉字间概率大的组成词组,形成分词结果jieba库常用的分词函数实例实例1:英文词频统计实例2:中文词频统计实例3:凯撒密码凯撒密码(Caesarcipher)是一种最简单且最广为人知的加密技术。它是一种替换加密法,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。凯撒加密凯撒解密分析:该问题的输入是密文字符串(输入,Input);处理过程是对密文字符串中的英文字符解密后替换明文字符(处理,Process);最后输出解密后的明文(输出,Output)。解密是加密的逆过程。类似于加密的第二种方法,利用字典存储解密密码本,得到解密的完整代码

第8章常用全局内置函数参考学时2课时教学目标掌握查看内置常量和查看内置函数的方法掌握python中常用内置函数filter、map、reversed、sorted、zip和enumerate掌握调用它们的语法格式和函数的作用,特别注意函数reversed和sorted并不改变传入的参数值教学重难点教学重点:1.掌握查看内置常量和查看内置函数的方法;2.掌握python中常用内置函数教学难点:正确使用python中常用内置函数filter、map、reversed、sorted、zip和enumerate进行程序编写教学主要内容本章知识框架如下:教学的过程及方法本章主要通过学生线上学习完成,然后利用2学时完成实例【8-7】-【8-11】的讲解。实例讲解时,着重分析结题思路。查看内置常量和内置函数的方法使用builtins模块查看导入builtins模块能够查看python内置的所有模块、常量和函数。使用help(函数名)可以查看指定函数的用法使用函数len可以获得当前版本的python内置的模块、常量和函数的总个数使用dir(__builtins__)查看直接使用内置函数dir进行查看:注意,传入的参数是“__builtins__”,其前后是两个下划线而不是单下划线。常用内置函数—filter函数调用格式:filter(functionorNone,iterable)作用:用于过滤序列,过滤掉序列中不符合条件的元素将序列中符合条件的元素作为迭代器的元素返回参数:第一参数为判断函数或者保留字None,如果该参数为None,则直接返回第二参数中为True的元素构成的迭代器中的元素;第二参数为可迭代序列,是需要进行过滤的序列返回值:返回一个迭代器对象常用内置函数—map函数调用格式:map(function,iterable1[,iterable2,…])作用:它接收一个函数function和一个或多个可迭代序列作为参数,通过把函数function依次作用到可迭代序列的每个元素上,得到的函数值作为一个迭代器对象返回参数:第一参数为函数,之后的多个参数均为可迭代序列返回值:返回一个迭代器对象注意事项:1.参数表中只有一个可迭代序列;2.参数表中有多个可迭代序列;3.参数表中有多个大小不一的迭代序列常用内置函数—reversed函数调用格式:reversed(sequence)作用:序列置逆参数:sequence可以是列表(list)、元组(tuple)、字符串(string)或range()返回值:返回一个反转的迭代器对象常用内置函数—sorted函数 调用格式:sorted(iterable,key=None,reverse=False)作用:对以对任何可迭代对象进行排序,返回已经排好序的列表,但原对象保持不变。默认为升序排序,要求迭代对象中的元素必须是可比较的参数:1.iterable—可迭代对象;2.key—指定迭代对象中用于排序的元素,一般用来接受一个lambda函数;3.reverse—指定排序的规则。为True,降序排序;为False,升序排序返回值:返回已排好序的列表sort()和sorted()的区分常用内置函数—zip函数调用格式:zip(iter1[,iter2[…]])作用:接受任意多个可迭代序列作为参数,将可迭代对象中对应的元素打包成一个一个元组,再返回由这些元组组成的对象参数:参数iter1,iter2…均为可迭代对象返回值:返回一个zip对象注意事项:传入的多个迭代对象的大小不等使用单个可迭代参数,它返回由单个元素构成的元组的zip对象没有参数,返回一个空迭代器常用内置函数—enumerate函数调用格式:enumerate(iterable[,start])作用:将一个可迭代的数据对象(如列表、元组或字符串)组成一个索引序列,利用它同时获得索引和值。常常用于for循环中得到计数参数:iterable--可以是一个序列、迭代器或其它支持迭代的对象start--用于指定索引起始位置,默认起始索引为0返回值:返回一个enumerate对象,该对象中每个元素是一个由索引和值组成的元组:(index,value)实例利用python提供的常用内置函数,结合列表、元组或字典等数据结构,可以完成基本的数据加工处理。本节使用实际问题说明如何使用常用内置函数。假设有如下表8.1所示的成绩表。表8.1《网页设计》课程成绩表学号姓名性别平时成绩期中成绩期末成绩20050034张明男78837820050044李小英女85889020050056何飞男78899020050057李敏女908589为了方便Python实现相关的数据处理,首先需要将以上表格用元组的列表或列表的列表来存储。【例8-7】筛选性别为男的所有学生信息。分析:使用内置函数filter可以实现在可迭代对象中筛选数据,返回满足条件的数据。list_stu为列表,可以作为可迭代对象。接下来的关键是如何表示筛选条件,filter函数将可迭代对象的每个元素作为参数传递给filter函数第一参数对应的函数,假设该函数的形参为stu,则stu会依次接收到list_stu的各个元素,list_stu的每个元素为一元组,该元组的第一元素为学号,第二元素为姓名,第三元素为性别,依此类推。因此,在作为filter函数第一参数的函数中,可以使用stu[2]获取学生的性别,使用表达式“stu[2]=='男'”作为返回值,即可筛选出性别为“男”的学生信息。【例8-8】筛选期末成绩大于等于90分的学生信息。分析:仍然使用filter实现数据筛选,设filter第一参数对应的函数的形参为stu,则stu[5]代表期末成绩。【例8-9】将所有学生信息按期末成绩由高到低排序输出。分析:使用sorted函数可实现数据排序,该函数的第一参数为可迭代对象。list_stu为列表,可以传递给该参数。sorted函数第二参数key为关键字参数,这里key为一个函数,它的参数依次接收sorted函数第一参数的所有元素,并返回排序时需要比较的数据,设该函数的形参为stu,则stu会依次接收到list_stu的各个元组,使用stu[5]可获取元组中的期末成绩,在该函数中返回stu[5],即可实现按期末成绩排序。实现由高到低排序,即降序排序,还需将sorted的第三参数reverse设置为True。【例8-10】如果总成绩=平时成绩*20%+期中成绩*20%+期末成绩*60%,计算总成绩并显示学号、姓名和总成绩。分析:使用map函数可以从可迭代对象计算出新的可迭代对象,list_stu为列表,可以作为可迭代对象。与filter类似,map的第一参数为函数,它的形参可以依次接收可迭代对象中的各个元素,假设该函数的形参为stu,与例8-7相似,可在该函数中使用stu[0]获取学号,stu[1]获取姓名,stu[2]获取性别,stu[3]获取平时成绩,stu[4]获取期中成绩,stu[5]获取期末成绩。【例8-11】在例8-10的结果之后补充性别列。分析:使用map函数在list_stu中获取所有学生的性别信息形成一个列表gender_list,再使用zip函数将result_list_stu和gender_list合并。

第9章文件参考学时3课时教学目标掌握声明文件对象的方式掌握全局函数open的正确调用格式了解绝对路径和相对路径的概念掌握os模块常用函数getcwd、chdir、mkdir、makedirs等的正确调用格式掌握使用Python程序对文本文件的读写操作掌握和熟练使用上下文语法教学重难点教学重点:1.掌握声明文件对象的方式;2.掌握os模块常用函数getcwd、chdir、mkdir、makedirs等的正确调用格式教学难点:能够熟练使用Python程序对文本文件的读写操作教学主要内容本章知识框架如下:教学的过程及方法线上:文件对象申明、文件的读写以及os模块的常用函数等基本操作由学生通过线上资源自主学习完成。线下:教师主要讲授上下文语法以及利用文件的基本操作和os模块的的常用函数解决具体问题的实例。文件的打开和关闭文件:存储于外部存储器的信息集合,可以包含任何数据内容二进制文件和文本文件Python文件操作的基本流程打开文件对文件进行读、写或其它操作关闭文件打开文件open()函数:open("文件名","模式",encoding="编码")文件名:是必不可少的,指定了要打开的文件名称模式:可以指定它是读或者写,或者其它的操作encoding="编码":可以指定当前文档读取或者写入的字符串编码是什么open()函数-文件名open()函数-模式open()函数-编码如果保存文件是以“Unicode”编码方式保存,则在打开文件时指定的编码参数为:encoding="UTF-16"关闭文件:close()函数:<文件对象名>.close()释放文件的使用授权os模块绝对路径的三种表达方式(1)转义字符表示法(2)字符r表示法(3)斜杠“/”表示法os模块常用函数文件对象方法声明文件对象文件读操作文件对象常用方法注意:文件写操作write()方法close()方法writelines()、flush()方法注意:当将一个列表的内容写入一个文件时列表中每个元素必须是字符串类型;列表中所有元素在写入文件时是写在一行上的,除非每个元素末尾有换行符'\n'总结:写入文件时,通过调用方法.flush()能够将缓存的内容写到文件当中;关闭文件时,要调用.close()方法来完成上下文语法定义:通过一个特定的代码段,将一系列的操作封装在一个上下文的环境里(用关键字with进行封装),当这个环境结束时,它会自动调用.close()来关闭,而不需要手动去写关闭操作.close()语法格式:withopen()asf:代码体避免写f.close()来显式的关闭文件,而是在当前的上下文代码体执行完毕之后,自动释放当前的资源实例【例9-8】假设文件夹“d:\python\ks”中有文本文件test.txt,其中内容为学生信息,包括三列:第一列为学号,第二列为姓名,第三列为班级名称,各列之间使用“\t”(tab键)分隔(如图所示)。要求通过读取每行学生信息,在文件夹“d:\python\ks”中创建考生文件夹,其名称规定为“学号+姓名(班级名称)”。文件夹创建完成后删除test.txt文件。具体解题步骤如下:(1)设置“d:\python\ks”为当前文件夹。(2)以“r”方式打开文件test.txt,并将文件指针保存到文件对象file中。(3)调用文件对象file的readlines函数一次读取test.txt文件中的所有数据行到列表line_list。(4)处理读取的每行数据,使用字符串的split方法,以“\t”作为分隔符将每行信息分割成学号、姓名和班级名称子字符串,并存入到列表变量parts中。(4-1)使用字符串的format方法将学号、姓名和班级名称按规定要求格式化并保存到变量dir_name中。(4-2)调用os.mkdir创建文件夹dir_name。(5)关闭文件。(6)调用os.remove函数删除test.txt文件。【例9-9】若文件夹中“d:\python\ks”中有若干子文件夹,每个文件夹名称格式为:“学号+姓名(班级名称)”(如图所示)。分析每个文件夹,如果文件夹非空,将学号、姓名和班级名称收集起来存入students.txt文件,每行只保存一个学生的信息,各项信息之间的分隔符为“\t”,如果文件夹空,仅将学号存入empty_folder.txt文件,每行只保存一个学生的学号。具体解题步骤如下:(1)设置“d:\python\ks”为当前文件夹。(2)以“w”方式创建文件students.txt和empty_folder.txt。(3)调用os模块的listdir函数获取所有文件夹名称到列表list_dir。(4)利用for-in循环遍历文件夹名称列表list_dir,得到路径“d:\python\ks”下的子文件夹路径,并按要求保存到文件students.txt或文件empty_folder.txt中。(5)关闭文件。

第10章错误与异常处理参考学时2课时教学目标区分语法错误与异常掌握Python中常用内置异常类了解异常处理流程重点掌握各种异常处理语句的语法格式和使用情况教学重难点教学重点:1.区分语法错误与异常;2.掌握各种异常处理语句的语法格式和使用情况教学难点:能够正确区分错误与异常,并能够快速排除代码编写过程中出现的错误与异常教学主要内容本章知识框架如下:教学的过程及方法线上:错误与异常的区别、python中常见内置异常类等由学生通过线上资源自主学习完成。线下:教师主要讲授异常处理语句的语法以及如何利用异常处理语句来解决实际问题的实例。错误与异常语法错误语法错误:又称解析错误,通常是由程序员的疏忽造成的,如字符串的定界符不全、代码行没有缩进、条件语句或者循环语句缺少冒号等,语法错误是初学者最容易遇到的错误。异常异常:是程序执行过程中遇到无法避免的问题而导致,如零做除数、内存或硬盘空间不足、网络连接失败、文件不能打开或系统出错等。异常处理两个阶段:1.检测到错误且解释器认为是异常,抛出异常;2.截获异常,采取可能的措施异常处理机制:try...except...finally...Python中常见内置异常类异常处理语句异常捕获与处理语句try:<可能产生异常的代码块>except<异常类型名>[ase1]:<异常处理代码块1>[except<异常类型名>[ase2]:<异常处理代码块2>]…[except:<异常处理代码块>][else:<代码块>][finally:<代码块>]处理过程:try-exceptX-except语句try-exceptX-else语句Exception类型异常try-finally语句try-exceptX-finally语句try-exceptX-else-finally语句总结

第11章词语库--wordcloud库参考学时3课时教学目标区掌握生成词云的基本操作:创建词云对象、加载词云文本、输出词云图了解设置词云图大小的参数了解设置词云图字体大小参数掌握font_path、mask、background_color和stopwords参数的设置掌握读取图片文件的方法掌握csv文件的读取操作掌握表格数据的词云图的生成方法等教学重难点教学重点:1.掌握font_path、mask、background_color和stopwords参数的设置;2.掌握读取图片文件的方法;3.掌握csv文件的读取操作教学难点:掌握读取图片文件的方法;掌握csv文件的读取操作;了解表格数据的词云图的生成方法等教学主要内容本章知识框架如下:教学的过程及方法线上:生成词云的基本操作:创建词云对象、加载词云文本、输出词云图等由学生通过线上资源自主学习完成。线下:教师主要讲授词云参数的设置,重点讲授艺术词云图的制作以及如何利用词云图来提升数据展示的能力。词云图:也叫”文字云”,是统计和设计的结合,是艺术和大数据的结合wordcloud库:wordcloud库是优秀的词云展示的第三方库wordcloud库安装wordcloud库:>\pipinstallwordcloud使用wordcloud库创建

温馨提示

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

最新文档

评论

0/150

提交评论