Python教案课程职责教学设计_第1页
Python教案课程职责教学设计_第2页
Python教案课程职责教学设计_第3页
Python教案课程职责教学设计_第4页
Python教案课程职责教学设计_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、课题程序设计基础-绪论教 学 目 标. 了解程序设计语言的发展历史.理解Python语百的特点及具重要性.掌握Python语言Hello程序的编写方法.掌握Python语言开发的运行环境的配置教学重点Python语百的特点及其重要性Python语言开发的运行环境的配置教学难点Python语言开发的运行环境的配置主要教法讲授演示法+上机操作教 学 过 程一、新课导入.计算机的定义:能够根据指令操作数据的设备?计算机的两个特性-功能性-可编程性?计算机的可编程性需要通过程序设计来体现.程序设计谛言:计算机能够理解和识别操作的一种交互体系程序设计谛言的种类机器语百,匚编语百局级语百常用的程序设计语言

2、?局级语百的执行方法-静态语百:编译执行-脚本语百:解释执行?编译和解释的区别-编译:一次性的翻译,需对目标代码优化-解释:每次运行都需要?编译:源代码(高级语言)转换成目标代码(机器语言)解释:源代码逐条转化成目标代码同时逐条运行目标代码的过程?编译的好处-目标代码执行速度更快-目标代码在相同操作系统上使用灵活-解释的好处-便于维护源代码-良好的可移植性? Python语言:将解释器和编译器结合的脚本语言?计算机已成为普通工具?学会编程:满足感和安全感? C/C+等语言:复杂? Python语言:充满快乐和创造性的全新旅程Python语言概述? Python语言的历史诞生于 1989年,已有

3、25年,达到成熟期2000 年,Python 2.0, 2,.7.62008 年,Python 3.0, 3.4.x? Python语言的特点强制缩进保证可读性不需要主函数可以同时被解释和编译执行一 语百简洁编程模式灵活(面向过程和面向对象)Python语言的开发环境配置?安装Python运行环境根据操作系统选择不同版本下载相应的Python 2.7.6版本程序,跟随提示安装?使用Python运行环境方法一:启动 Windows命令行工具,输入 python,在后输入Python语句, 如图所示输入exit()或quit()退出方法二:调用已安装的IDLE来启动Python运行环境,方法三:按

4、照语法格式编写代码,保存为文件,例如源文件 hello.py。打开 Windows命令行,使用命令 python hello.py来运行文件?使用Python运行环境方法四:打开IDLE, Ctrl+N打开一个新窗口,输入语句并保存,使用快键建 F5即可运行该程序方法五:将Python集成到Eclipse等面向较大规模项目开发的集成开发环境中其他操作系统上配置 Python环境与上述在Windows上的配置方法类似Hello 程序?你的第一个程序:在屏幕上打印出Hello World-print “Hello World”-表示将引号中的信息输出到屏幕上 显示效果如下: 二、上机练习首先进行P

5、ython的安装与开发环境配置, 接着完成第一个程序“ Hello World ”三、本课小结计算机的基本概念程序设计语言分类编译和解释Python语言概述Python的Hello程序编写及开发环境配置课后反思时间:课题Python程序语言入门教? 让学生了解什么是编程及对编程提起浓厚的学习兴趣;学 Python Shell、GUI 和 Prompt (提示符)的理解;学会与Python交互的方法,print指令;目新建程序文本文档、运行程序的方法、保存时需要注意什么;学会怎样去查询程序的错误;标P让学生对编程提起浓厚的兴趣;教学重点- print指令的运用;识别和修正程序的错误。教学难点识别

6、和修正程序的错误;主要教法讲授演示法+上机操作教 学 过 程一、复习巩固1、什么是编程?2、Python我们和计算机沟通的语言所想要表达编程软件翻计算机接收的意思译成二进制并执行常用、最流行的几种程序语言:C、C+、C#、Java VB、python3、Python可以用来做什么开发游戏&软件(游戏后台大多数用python编写);制作更高级的 Flash (web flash gamR ;创建数据库;黑客hacker (远程攻击计算机、破解硬件 or软件);发明变形金刚(2006年日本FANUC推出的人工智能机器人);学习其他语言的基础(所有程序语言都有共同性,学好python能够让你快人一步

7、的理解其他程序语言);python几乎无所不能。=当然不是每一个学习python的人都能成功=但是学习python你将获禾I以下几点=V让你的思维更加敏捷!V让你变的知识渊博!V让你学习更多的英文!= 也有可能带来一些“负面影响=X你的皮肤会变得粗糙_ 叫做提示符(Prompt),指程序正在等待你键入信息时显示的符号。 三、来点指令吧! print Hey man!”回车(每输入完一行指令都要输入回车以跳转到下一行) Print打印(命令),指在屏幕上显示文本,而不是常说的用打印机打印在纸上。! !注意 颜色 错误 print 5 + 3 8计算机非常擅长算术运算,计算机被创造出来的初期就是被

8、用来数据计算。 再试一条指令! print 5 * 3 15= Mr.Lee TIPS =几乎所有计算机程序和语言中都使用*符号作为乘号。这个符号称作“星号”或“星”。=口算&计算器& python 三者进行对比吧 = 口 算:Print 5 * 3=口算&计算器& python 三者进行对比吧 =利用python你除了可以超大数的数学计算之外,你还可以做些令人意想不到的事情,例 如: print Dog + brother”Dog brother 或者 print where is plane * 20where is plane where is plane where is plane

9、where is plane where is plane where is planeiswhere is plane where is plane where is plane where is plane where is plane where is plane where plane where is plane where is plane where is plane where is plane where is plane where is plane where is plane计算机除了非常擅长运算外,另一件事情就是反复的做事情,重要的是它不会感到枯燥, 就像上面我让计算

10、机喊了 20句where is plane,如果你高兴可以让它喊到直到 MH370出现, 前提是马航要给力还有就是不要停电 五、编程任务到目前为止,我们只是看到单个 python指令的演示,其实程序就是多个指令的集合。1、创建程序的方法:a.通过 Python Shell 菜单栏 一 File 一 New Windows 创建;b.快捷键:Ctrl + No*新程序窗口标题栏显示“ Untitled (未命名)。如何给程序取名字?2、程序1我们的第一个程序“我爱吃香蕉”print “我爱吃香蕉!”print “香蕉 ” * 20print “mua ” * 40print “我吃撑了!”3、保

11、存/另存(命名)你的程序文档File - Save / Save As输入完指令后通过Save快:Ctrl + N保存or另存为Save As 快:Ctrl + Shift +S! !注意 扩展名 print where is plane ”syntax error: invalid syntax (语法错误: 无效的语法)theres an error is your program (这是一个错误的程序)错误原因:where前面漏了一个引号2 runtime error(运行时错误):只会在程序运行时才会发生的错误,是IDLE或python无法检测出来的错误。例如:程序2 运行时错误-“我

12、爱大鳄鱼”print “你好!欢迎来到我的动物园!”print “我的动物园有好多好多的动物,例如: ”print “鳄鱼 ” + 5错误原因:IDLE 1.2.1= No Subprocess =你好!欢迎来到我的动物园!我的动物园有好多好多的动物,例如:Traceback (most recent call last):(错误的开始)File C:UsersAdministratorDestopi love big cayman.py, line 4, in (错误 发生的位置/程序文件保存的路径)Print鳄鱼” + 5 (出错的代码行)TypeError: cannot concate

13、nate str and iht objects (python认为可能存在的问题,并 不一定是在这里,但是会在这附近)=思 考=为嘛print “鳄鱼” * 5可以,print “鳄鱼” + 5却不行?=解惑=听我说,这有点像将苹果和鳄鱼放在一起,在python中不能将两个完全不同的东西放在一起,比如说数字(int)和文本(str)。 “鳄鱼” + 5像是在说5个苹果和3只鳄鱼相 加等于多少?结果是8,但是8个什么?完全没有意义。不过几乎所有东西都可以乘以一个数来翻倍,如果你有1只鳄鱼,再乘以5,那么你就会有5只鳄鱼!(克隆大乱斗!)。七、第二个程序任务第一个程序“我爱吃香蕉!”没多大实际意

14、义,仅仅只是在屏幕上打印了一些内容,下面我们来是一个更加有意思的程序,记得给它取上一个名字,NumGuesg是个不错的名字。File f New Windows f Save - NumGuess.py输入以下代码:#encoding=GBK#import randomsecret = random.randint(1, 100)guess = 0tries = 0print 你好,同学我和你们班主任之间有一个秘密!?print ”这个秘密就在1-99之间的一个数字。我会给你6次机会来猜这个数字,猜对你就可以获赠加多宝一罐!while guess !=secret and tries 6:gu

15、ess = input(来猜个数字吧! ?)if guess secret:print 太高了喔!”tries = tries + 1if guess = secret:print 哦也!你猜中这个数字了! !那么加多宝的话,请出门左拐找你们蒋老师! else:print 我不会给你更多机会了,同学!你现在得请我喝一瓶王老吉!print 这个秘密数字就是, secret程序解析:while、 if、 else elif和input指令我们在以后会详细的学到。程序概念点:?由程序随机选取秘密数。?用户输入他猜的数。?程序根据秘密数检查用户猜的结果:太大还是太小??用户不断尝试,直到猜出这个数,或

16、者用完所有机会。?猜到的数与秘密数一致时,玩家获胜。教学过程结束。课堂小结:? 学会了如何启动IDLE;? 了解了交互模式;? 交给Python 一些指令来执行;? 看到了 Python知道如何完成算术运算(包括非常大的数);? 启动IDLE文本编辑器键入你的第一个程序:我爱吃香蕉;? 运行你的第一个Python程序;? 了解如何查看错误消息;? 运行你的第二个 Python程序:猜数游戏。课堂练习 之 用脑想一想:如何启动IDLE ?print的作用是什么?Python中表示乘法和除法的符号是什么?GUI的特性包括哪些?如果想要你的程序支持中文,需要做什么?课堂练习之动手做一做:.在交互模式

17、中,使用 Python计算一周有多少分钟。.编写一个简短的小程序,打印3行:你的名字、出生日期,还有你最喜欢的颜色(结果应该是下面这样)我的名字叫XX ,我是XX运动队的。我1988年08月20日出生。我最喜欢的颜色是粉红色。课后反思课题时间:判断循环教 学 目 标掌握if语句:单分支、双分支、多分支、嵌套 完成条件语句实例:登录认证模块学会判断输入是否合法了解三元表达式掌握 range ()掌握循环语句掌握for语句掌握while掌握 break、continue、pass完成循环语句实例:登录认证模块扩展教学重点掌握if语句:单分支、双分支、多分支、嵌套 了解三元表达式掌握 range (

18、)掌握循环语句掌握for语句掌握while掌握 break、continue、pass教学难点完成条件语句实例:登录认证模块 完成循环语句实例:登录认证模块扩展主要教法讲授演示法+上机操作教 学 过 程一、新课讲授1.掌握if语句a)单分支if表达式:代码块1else:代码块b)双分支if表达式1:代码块1elif 表达式2:代码块2c)多分支if表达式1:代码块1elif 表达式2:代码块2else :代码块其他d)嵌套. 了解三元表达式Expressionl ifboolean_expression else Expression2如果满足条件A大于B,则max值为A,反之max为B如:m

19、ax=A if AB else B例如:.掌握 range ()range():产生整数序列例:range(n):产生从0开始,至U n的数字序列,不包括n。range(m,n):产生从m开始,至U n的数字序列,不包括n。n。range(m,n,k):产生从m开始,到n,增量为k的数字序列,不包括.掌握循环语句a)掌握for语句语法格式:for expression1 in iterable:for_suiteelse :else_suite例如:结果:b)掌握 whilec)掌握 break、continue、pass语法结构:while boolean_expression:while_

20、suiteelse:else_suite解释:如果 boolean_expression 的结果为 True,循环就会执行;boolean_expression 的结果为False时终止循环,此时如果有else分支,则会执行。以上结构中,else分支为可选部分。else代码块:循环不满足循环条件终止, 才会执行,如果循环终止是由break跳出,则else分支不会执行。例如:break :跳出所处的最近层循环continue:跳到所处的最近层循环的开始处pass:占位语句例如:执行结果:二、上机练习.条件语句实例:登录认证模块a)判断输入是否合法b)非法用户提示警告信息c)合法用户提示登录成功u

21、sername = raw_input (username: )if username =:print 用户名不能为空”else :print 033 1;33;45m 登录成功,欢迎 s033 0m %usernamechr()ord().循环语句实例:登录认证模块扩展a)直接回车无效,继续输入b)验证用户身份是否合法三、课堂小结if语句:单分支、双分支、多分支、嵌套、二兀表式、range ()、循环语句、for语句、while、break、continue、pass登录认证模块展示课后反思时间:课题python序列-字符申教 学 目 标了解序列类型常用操作了解索引和切片掌握类型转化掌樨强制

22、类型转化学会字符串转换实例:格式化输出菜单列表,将用户的输入数值转化整型并 验证掌握字符串常用方法s.find() s.join() s.replace() s.split() s.strip() s.index() s.startswith/s.endswith (t)s. isalnum () /s.isalpha () /s.isdigit () /isupper()/islower()s.upper()/ s.lower () /s.swapcases.count()教学重点了解序列类型常用操作 了解索引和切片 掌握类型转化 掌樨强制类型转化教学难点学会字符串转换实例主要教法讲授演示法

23、+上机操作教 学 过 程一、新课讲授.序列类型常用操作a)索引和切片索引:例:s0从左向右:索引从 0开始;从右向左:索引从 -1开始切片:例:s0:2扩展切片:指定步长,例:s0:9:2b)掌握类型转化格式:print 字符串 format1 %format2 (变量或值1,变量或值2.)符号及其对应输出格式:%d或%i十进制整数或长整数%f浮点数%s字符串%用于输出符号%举例:c)强制类型转化int ():强制转换为整型, 例如: 注意:只能将由数字组成的字符串转换为整型 错误用法 float ():强制转换为浮点型例如 str():强制转换为字符串例如:2.掌握字符串常用方法s.find

24、 (t):查找子用t,找到返回最小的索引值,找不到则返回-1s.join(iter) 使用s作为连接符连接序列iter中所有元素如:list2=h,e,T,T,o, .,c,o,m.join (list2 )s.replace (old,new ):替换s.split (sep):使用sep作为分割符,列表返回结果。如:str= ”str.split(.) 得到www ,baidu,com 序列s. strip(t):删掉开头和结尾的字符t如:删除空白符s1.strip()s. index (t):子用t首次出现的位置,找不到报错s.startswith/s.endswith (t)以子用 t

25、 开头/结尾:结果是 true 或 falses. isalnum () /s.isalpha () /s.isdigit () /isupper()/islower() : 判断所有字符 是否为数字或字母/是否为字母/是否为数字结果是bools.upper()/ s.lower () /s.swapcase :所有字母转化为大写字母/小写字母,大小写 互换s.count(t) 统计t出现的次数二、上机练习a)字符串转换实例:格式化输出菜单列表;将用户的输入数值转化整型并验证三、本课小结序列类型常用操作、索引和切片、类型转化、强制类型转化、字符串常用方法 学生展示:字符串转换实例课后反思时间:

26、课题python列表和元祖教 学 目 标掌握列表基础知识 掌握列表相关方法 掌握序列类型操作 掌握生成器 掌握元组类型 掌握元组相关方法教学重点掌握列表相关方法 掌握序列类型操作 掌握生成器 掌握元组类型教学难点掌握列表相关方法 掌握元组相关方法主要教法讲授演示法+上机操作教 学 过 程一、新课讲授.掌握列表基础知识列表的特点:支持异构:一个列表中含不同类型的对象支持嵌套:即列表中的兀素可以是列表可父:支持通过索引,切片,进行修改如何定义列表:方造L: 口;例:list1=1,3,5方法一:使用内置函数list():内建函数list(a_sequence)可以将一个序列转为列表例1: stU=

27、dddgf list1=list(str1) listl d, d, d, g, f例2:(后面讲) tuple1=(1,2,1) list1=list(tuple1) listl1, 2, 1例3:.掌握列表相关方法:append ():向列表中追加元素例如:extend ():追加可迭代对象中所有元素例 1: list2=1,2,3list3=list3.extend(list2)例2insert ():在指定索引位置插入列表也支持索引,例如:插入例子:pop ():按照索引弹出元素,返回值为该元素。默认弹出最后一个元素 例如:remove ():按照元素值弹出第一个匹配项例如:count

28、 ():统计指定值出现的次数index():某个值第一次出现的位置例如:reverse ():反向存放例如:查询遍历:for I in listfor i , k enument (list )sort ():排序.掌握序列类型操作:序列类型包括:字符串、列表、元组+连接*重复例如:max():求最大值、min():求最小值例如:.掌握列表生成式列表生成式,是 Python内置的一种极其强大的生成list的表达式。用于:基于已有列表生成新列表语法结构:列表生成式的书写格式:x*x for x in range(1 ,11)第一:把要生成的元素x*x放到前面第二:后面跟上for循环这样就可以把l

29、ist创建出来。for循环后面还可以加上if判断举例:1到10之间的偶数平方再除以2作为新列表元素1到10之间的偶数,作为新列表元素特点:一次性生成新列表,如果列表数据过大,会消耗大量资源。.掌握元组类型定义元组:方法一:()例:tuple1=(1,3,4)方法二:使用内置函数tuple():将可迭代对象中所有元素作为元组元素例: list1=1,2,3 t1=tuple(list1) t1(1,2, 3)1.2元组的特点支持异构;支持嵌套;/、可变:不支持通过索引、切片,进行 修改.元组的遍历例如:.掌握元组相关方法index ():返回指定元素第一次出现的索引位置count ():指al兀

30、素出现的次数例如:二、上机练习练习:三、本课小结列表基础知识、列表相关方法、序列类型操作、生成器、元组类型、元组相关方法 学生完成实例操作课后反思时间:课题运维平台计算机管理实例教 学 目 标登录模块实现 添加计算机 删除计算机 查询可管理计算机教学重点登录模块实现教学难点查询可管理计算机主要教法讲授演示法+上机操作教 学 过 程一、学习任务运维平台计算机管理实例任务要求与注意事项二、上机练习学生上机实操:提示:三、任务展示与评价学生进行展示,完成互评与老师点评项目分值评价标准得分自评组评师评|程序设计20编程技巧30 1调试过程运行结果30搭建合理稳固小组配合20小组成员分工及配合方面总体得

31、分课后反思时间:课题python字典和集合教 学 目 标掌握字典类型 掌握字典相关方法 掌握字典的遍历 掌握集合类型掌握集合相关方法教学重点掌握字典相关方法 掌握字典的遍历 掌握集合类型教学难点掌握字典的遍历掌握集合相关方法主要教法讲授演示法+上机操作教 学 过 程一、新课讲授.掌握字典类型字典的特点无序:通过键实现元素存取,故无序可变:可以通过键进行改变异构:支持多种数据类型嵌套:可以在键值对中的值部分出现字典定义字典:方用 keyl : valuel , key2 : value2,方法二:dict()内置函数:指定键值例:d2=dict (name=jerry,age=45,gender

32、=m )iv. 关键点:键与值用冒号f ”分开;项与项用逗号;”分开;字典中的键必须是唯一的,而值可以不唯一.掌握字典相关方法更新或添加元素:dict1key = value例如:tems ():变量解包:即将字典转化为键、值作为元组的列表例如:eys ();键歹U表例如:alues ():值列表例如:as_key ():判断是否存在某个键,返回结果true或false例如:el删除元素:调用python自身函数删除例如:en():取得字典中键值对个数例如:update ():在原字典上合并字典,键相同时会被覆盖。例如:get ():取得某个键对应的值例如:pop ():弹出指定键对应的值po

33、pitem ():随机弹出键值对clear():清除所有元素例如:.掌握字典的遍历:.掌握集合类型什么是集合无序、互异,集合的功能及特点支持成员关系判断支持迭代不支持索引,切片元素唯一定义集合set方法一:元素方法二:内置函数 set ()例:.集合相关方法:len ():元素个数例如:add ():添加元素例如:remove。:删除元素例如:update ():合并集合例如:pop():随机弹出某个元素例如:集合关系操作s|t: s和t的并集例如:s&t: s和t的交集例如:s-t:求差集,存在于 s集合而不存在于t集合中的例如:sAt:求对称差集例如:二、上机练习学生上机完成字典类型、字典

34、相关方法、字典的遍历、集合类型、集合相关方法的案例练习。三、本课小结字典类型、字典相关方法、字典的遍历、集合类型、集合相关方法课后反思时间:课题python文件处理教掌握如何创建文件对象学掌握open二种基本模式目掌握open()的附加模式掌握文件对象的相关方法标掌握文件对象的相关属性教学重点掌握如何创建文件对象掌握open二种基本模式掌握open ()的附加模式掌握文件对象的相关方法教学难点掌握文件对象的相关属性主要教法讲授演示法+上机操作教 学 过 程一、新课讲授.掌握如何创建文件对象a)内置函数open()同file ():用于打开文件和创建文件对象,返回文件对象b) with 打开文件

35、: with open(password) as f : #f = file(password)c)语法格式:open(文件名,模式)例如:.掌握open ()三种基本模式a)r:只读,如果文件不存在,会发生异常例:w:写入(覆盖原有内容),如果文件不存在,会创建文件例1: password文件内容不为空,以 w模式打开:结果:创建passwd文件a:附加(从文件尾部追加),如果文件不存在,会创建文件例如:.掌握open ()的附加模式+:表示同时支持读写aaa+可读写模式,写只能写在文件末尾处w+可读写,与a+的区别是要清空文件内容r+可读写,与a+是区别是可以写到文件任何位置.掌握文件对象

36、的相关方法readline():返回一行readlines():列表类型返回所有行内容read():指定从文件读取多少字节,不指定字节数则读取全部内容,以字符串形式显示。tell():当前指针在文件中的位置(多少个字节的位置)seek():定义文件指针的偏移量f.seek(偏移量,选项)write ():将字符串写入文件writelines():将字符序列写入flush():刷新,将数据从缓存区写入文件sldkjalsjaslkjdclose():关闭文件例如:例2:.掌握文件对象的相关属性mode:文件打开模式name返回文件名closed :显示文件是否已关闭掉例如:二、上机练习学生上机完

37、成创建文件对象、open ()三种基本模式、 open ()的附加模式、文件对象的相关上机练习,熟练完成Python创建文件对象的方法。三、本课小结如何创建文件对象、open ()三种基本模式、open ()的附加模式、掌握文件对象的相关方法掌握文件对象的相关属性课后反思时间:课题函数式编程一教 学 目 标掌握什么是函数掌握函数的定义掌握函数的调用掌握函数形参和实参的区别了解函数的作用域:什么是作用域、作用域分类掌握函数的参数:默认参数、美键字参数、可变参数教学重点掌握函数的调用掌握函数形参和实参的区别教学难点了解函数的作用域:什么是作用域、作用域分类掌握函数的参数:默认参数、美键字参数、可变

38、参数主要教法讲授演示法+上机操作教 学 过 程-、新课讲授.掌握什么是函数 function 功能def函数是python为了代码重用和最小化代码冗余而提供的基本程序结构。函数将相关功能打包并参数化,将复杂的系统分解成可管理的部件。.掌握函数的定义在这里说明几点:在Python中采用def关键字进行函数的定义,不用指定返回值的类型。函数参数params 可以是零个、一个或者多个,同样的,函数参数也不用指定参数类型,因为在Python中变量都是弱类型的,Python会自动根据值来维护其类型。return语句是可选的,它可以在函数体内任何地方出现,表示函数调用执行到此结束;如果没有return 语

39、句,会自动返回 NONE ,如果有return 语句,但是return 后面没有接表达式或者值的话也是返回 NONE。下面看例子:例1 :例2:例3:.掌握函数的调用函数调用的方法:函数名(实际参数)在Python中不允许前向引用,即在函数定义之前,不允许调用该函数例如下面的错误:.掌握函数形参和实参的区别形参全称是形式参数,在用 def关键字定义函数时函数名后面括号里的变量称作为形式参数。实参全称为实际参数,在调用函数时提供的值或者变量称作为实际参数例如:. 了解函数的作用域什么是作用域变量的作用域:即变量能够使用的范围作用域分类本地作用域:定义在函数体内的变量(局部变量)在Python中,

40、会为每个层次生成一个符号表,里层能调用外层中的变量,而外层不能调用里层中的变量,并且当外层和里层有同名变量时,外层变量会被里层变量屏蔽掉,例如:在函数function 中,while 循环外面和 while 循环里面都有变量 x,此时,while循环外面的变量x会被屏蔽掉。注意在函数内部定义的变量作用域都仅限于函数内部,在函数外部是不能够调用的,一般称这种变量为局部变量。全局作用域:定义在主程序的变量(全局变量)它是在函数外部定义的,作用域是整个文件。全局变量可以直接在函数里面应用,但是如果要在函数内部改变全局变量,必须使用global关键字进行声明.掌握函数的参数默认参数:定义函数时, na

41、me=value”的形式设置参数默认值在Python中默认的是采用位置参数来传参。这样调用函数必须严格按照函数定义时的参数个数和 位置来传参,从左至右进行匹配,否则将会出现预想不到的结果调用函数时 Ada i ui e tr sl t dijdef ustrs (ustrnwnt. group=Jr Ilri / );list = 0li st userriiame - groupirri nt ucarcC Kafkel* Ckindleibl*) Tjli izi9 pyiRciii five ,ttir口 + nx/Pyr iv: ,肌5 .)def abc (name,age=26,

42、sex|):print ,* *姓名二Xs年龄二%s性别士 Xs,T%(namej age,sex)abc(gagaJage=ll)默认参数放后边关键字参数:调用函数时,使用“ name=value”的形式通过参数名指定通过指定参数名字传递参数的时候,参数位置对结果是没有影响的。关键字参数最厉害的地方在于它能够给函数参数提供默认值 ,参数指定了默认值后,如果传参时不指定参数名,则会从左到右依次进行传参,关键参数要放在普通参数后面。例如:可变参数例1: *args ,我们要定义一个函数的时候,必须要预先定义这个函数需要多少个参数(或者说可以接受多少个参数)。一般情况下这是没问题的,但是也有在定义

43、函数的时候,不能知道参数个数的情况在Python里,带*的参数就是用来接受可变数量参数的,这里接收的是元组数据例 2: *kwargs,字典作为参数:定义函数时使用*开头的参数,调用时使用name=value ” 的形式,作为传递进来字典的键值对def say (kwarg.sj.# jriat .-*-扇arg$F 或蛇了 Ji f kwar:gs is not None:print k&rg町else :print *yu 31 td inpt tli nue iltc*(name- alex* / a g&=22)士数寒致kww第C: Fythoik27 .python. *xe C:/

44、Users/Adminiatra.t or/FyehaimFr1 a-ge : 22d maw:alex 二、上机练习学生上机完成函数式编程任务,教师巡视指导。三、本课小结什么是函数函数的定义函数的调用函数形参和实参的区别函数的作用域:什么是作用域、作用域分类函数的参数:默认参数、关键字参数、可变参数课后反思时间:课题函数式编程二教递归函数学掌握lambda表辽式目enumerate 函数 JWU 化yield函数(迭代)标装饰器教学重点递归函数掌握lambda表辽式教学难点enumerate 函数序列化yield函数(迭代)主要教法讲授演示法+上机操作教 学 过 程一、新课讲授.递归函数:在

45、函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这 个函数就是递归函数;例1例2.掌握lambda表达式lambda函数也叫匿名函数,即,函数没有具体的名称 ,而用def创建的方法是有 名称的语法:lambda参数:表达式lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值。lambda语句构建的其实是一个函数对象举例:f1=lambda x,y:x+yf1(2,3)和map函数共同使用:Map()第一个参数接收一个函数名,第二个参数接收一个可迭代对象例如:Lambda和map共同使用. enumerate函数用于遍历序列中的元素以及它们的下标. yield

46、函数:yield 的作用就是把一个函数变成一个 generator ,带有yield 的函 数不再是一个普通函数,Python解释器会将其视为一个generator例如:5.装饰器装饰器就是为已经存在的对象添加额外的功能。比如1:例如2:其中融法糖:相当于run = login(run)二、上机练习学生上机完成本节函数式编程任务,教师巡视指导。三、本课小结递归函数掌握lambda表达式enumerate 函数序列化yield函数(迭代)装饰器课后反思时间:课题常用模块一教 学 目 标了解什么是模块了解模块和文件掌握导入模块:模块搜索路径、import语句导入模块、from语句导入模块os模块及

47、方法:系统相关、目录相关、路径相关、文件相关、查询相关教学重点了解模块和文件教学难点掌握导入模块os模块及方法:主要教法讲授演示法+上机操作教 学 过 程一、新课讲授了解什么是模块模块是一个包含定义的变量,函数和类的文件,其后缀名是.py o模块可以被其他程序导入,以使用该模块中的变量,函数和类。了解模块和文件if _name_ =_main_: print xxxx如果作为程序文件独立执行,_name_E重值为main,则执行if_name_ =_main_:后的语句。如果作为模块导入其他文件,_name量值为模块名,则不执行if _name_=_main_:后的语句,在导入进的文件中调用时

48、/I对应执 行。3.掌握导入模块模块搜索路径:import sysprint sys.path查看以列表显示的搜索路径例如:import语句导入模块import module 导入模块import module as module_alias以另 U名导入模块from语句导入模块from modules import names导入模块的指定属性或方法4.掌握os模块常用方法(实现跨平台的操作系统应用接口)指示正在使用的平台;如果是 window 则用nt表示,对于Linux/Unix 用户,它是posix例如:调用系统命令的方法os.system():调用操作系统的命令;例如os.popen

49、()调用系统命令,但结果是返回对象例如:目录相关的方法:getcwd ():查看当前目录。即 python脚本工作的目录路径 ;例如:chdir ():切换目录;例如:os.walk(): 遍历目录树 walk(top,topdown=True,onerror=None)listdir ():列出指定目录下文件及子目录;如:显示c盘文件和目录:mkdir ():创建目录;如:makedirs():创建多层级目录;如:rmdir ():删除空目录;例如:removedirs ():删除多层级空目录;例如:路径相关的方法::函数返回一个路径的目录名和文件名;例如:;如:,例如:,例如:;例如:,例

50、如:文件相关的方法:remove ():删除文件,如:rename ():重命名文件,如查询相关方法os.path .exist s()函数用来检验给出的路径是否真地存在,如 :例如:islink ():是否为链接文件文件信息相关方法:stat ():查看文件状态信息getatime():访问时间getctime():状态改变时间(例如权限等)getmtime():修改时间0L ,二、上机练习学生上机完成本节模块与文件的上机编程任务,教师巡视指导。三、本课小结什么是模块模块和文件掌握导入模块:模块搜索路径、import语句导入模块、from语句导入模块os模块及方法:系统相关、目录相关、路径相

51、关、文件相关、查询相关课后反思时间:课题常用模块二教 学 目 标掌握Random模块掌握MD5加密模块竽握Time模块掌握Sys模块教学重点掌握Random模块教学难点掌握MD5加密模块主要教法讲授演示法+上机操作教 学 过 程一、新课讲授1. random模块random.randintrandom.randint()的函数原型为:random.randint(a, b),用于生成个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a = n = bprint random.randint(12, 20) #生成的随机数 n: 12 = n = 20print random

52、.randint(20, 20) #结果永远是 20#print random.randint(20, 10) #该语句是错误的。下限必须小于上限。Random.randrange (start, stop, step)从指定范围内,按指定基数递增的集合中获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从10, 12, 14, 16,96, 98 序列中获取一个随机数Md5加密模块Time模块Sys模块sys.argv 实例import sysdef readfile(filename):#从文件中读出文件内容Print a file to the st

53、andard output.f = file (filename)while True :line = f.readline()if len (line) =0:break print line, # notice comma分别输出每行内容f.close()# Script starts from hereif len (sys.argv) 捕捉这里语句的异常except Exception1,reason:-异常判断语句语句-异常处理语句except Exception2,reason:-异常判断语句语句-异常处理语句except:- 空except语句用于捕捉其他异常语句else:-未发

54、生异常时执行语句finally:-无论是否发生异常都执行语句5,掌握处理异常的特殊方法5 . 1断言语法:assert expression,reasonassert是断言的关键字。执行该语句的时候,先判断表达式expression ,如果表达式为真,则什么都不做;如果表达式不为真,则抛出异常. 了解什么是正则表达式正则表达式(RE)是由普通字符和特殊符号组成的字符串,描述了这些字符的某种组合方式,因此能按某种模式匹配一组有相似特征的字符串. 了解什么是re模块Python的re模块用于实现正则表达式。.掌握正则表达式中的特殊字符d 匹配任何数字D匹配非数字字符w 匹配字母,数字,下划线W 匹

55、配不是字母,数字,下划线的字符s 匹配空白字符S 匹配不是空白的字符.掌握re模块的常用方法compile。功能:编译正则表达式用法:compile(pattern,flags=0)findall()功能:取得每个()中正则匹配的内容(没有()则整个正则匹配的部分),返回匹配列表用法:findall(pattern,string,flags)match()匹配:从字符串的开头对模式进行匹配,如果成功,则返回一个对象;如果失败,则返回Nona用法:match(pattern,string)search()搜索:search会检查字符串任意位置与给定正则表达式的搜索情况。如果搜索 到成功的匹配,会

56、返回一个匹配对象,否则返回None。用法:search(pattern,string)split()功能:正则表达式作为分隔符把字符串分割为一个列表,返回列表,最多分割max 次(默认是分割所有匹配的地方)用法:split(pattern,string, max=0)import rea = print re.split( .,a)sub()和 subn()功能:将某字符串中匹配正则表达式模式的部分进行替换。subn()和sub() 一样,但它还返回一个表示替换次数的数字;替换后的字符串和表示替换次数的数字作为一个元组返回。用法:sub(pattern, repl, string, max=0

57、).掌握匹配或搜索返回对象的常用的方法group()返回整个正则表达式匹配的字符串,同 group(0)group(i)正则表达式中第i个“()”括起来部分正则表达式匹配的内容groups()返回各个()括起来的正则表达式匹配的字符串组成的元组start() 返回匹配开始的位置end()返回匹配结束的位置span()返回匹配开始和结束的位置二、上机练习学生上机完成本节python中的常见异常、检测和处理异常、处理异常的特殊方法、re模块的上机编程任务,教师巡视指导。三、本课小结什么是错误、什么是异常python中的常见异常检测和处理异常处理异常的特殊方法:断言、抛出异常、re *块课后反思时间

58、:课题与数据库交互教 学 目 标掌握数据库连接方法掌握数据库模块方法学会数据库操作:增加数据、删除数据、修改数据、查询数据掌握数据库关闭方法教学重点数据库操作:增加数据、删除数据、修改数据、查询数据教学难点数据库模块方法主要教法讲授演示法+上机操作教 学 过 程一、新课讲授.数据库的连接mysqldb解决依赖性yum install python-devel mysql-devel zlib-devel openssl-devela)导入模块b)建立连接c)常见参数.数据库模块方法commit()提交rollback。回滚看一个简单的查询示例如下:cursor方法执行与返回值cursor方法提

59、供两类操作:1.执行命令,2.接收返回值。cursor用来执行命令的方法execute(self, query, args)/执行单条sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数executemany(self, query, args)/移动到下一个结果集cursor用来接收返回值的方法/接收全部的返回结果行.fetchall(self)/接收size条返回结果行.如果size的值大于返回的结果行的数量,则会返回cursor.arraysize 条数据fetchmany(self, size=None)/返回一条结果行fetchone(self)3.数据库操作创建 data

60、base tables如果数据库连接存在我们可以使用execute()方法来为数据库创建表,如下所示创建表 EMPLOYEE_代码如下:#!/usr/bin/pythonencoding: utf-8 import MySQLdb打开数据库连接db = MySQLdb.connect(localhost,root,361way,test)使用cursor()方法获取操作游标cursor = db.cursor()如果数据表已经存在使用execute。 方法删除表。cursor.execute(DROP TABLE IF EXISTS EMPLOYEE)创建数据表SQL句sql = CREATE

温馨提示

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

评论

0/150

提交评论