Python程序设计基础 教案10 常用函数_第1页
Python程序设计基础 教案10 常用函数_第2页
Python程序设计基础 教案10 常用函数_第3页
Python程序设计基础 教案10 常用函数_第4页
Python程序设计基础 教案10 常用函数_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

课程单元教学设计课程名称:程序设计基础课程性质:☑必修课□选修课学时学分:3学分56学时开课学期:2023学年第一学期教师姓名:陈建勇教师职称:副教授授课班级:人工智能23-1和23-2所属专业(教研室):人工智能技术应用开课部门:信息技术学院温州科技职业学院教学督导处(诊改办)制二○二三年九月

《程序设计基础》课程单元教学设计本单元标题:常用函数序号10授课班级人工智能23-2上课时间周月日第1-2节周月日第3-4节上课地点笃1-609笃1-220人工智能23-1周月日第5-8节笃1-412学情分析上次的,学生已经对字符串和集合函数有了一个基本了解。结合之前的几次了,大家会发现经常需要使用到一些官方给我们做好的函数。只有熟练掌握了这些函数的用法,才能提升我们编程的效率。这次课,学生将认识常用函数的学习,一方面是巩固已学过的方法,另一方面也学习一些常用函数的新使用。教学目标能力(技能)目标知识目标情感与价值目标掌握常用函数的基本使用方法。学会查看开发文档。掌握输出格式的基本使用。掌握split和join的使用。1.诚信考试的重要性。重点难点及解决方法教学重点教学难点解决方法掌握format下常用输出格式。掌握split和join的常见使用。掌握enumerate和zip的基本说用。掌握集合函数的使用。1.通过多媒体展示、动画演示及播放程序设计方面的视频.2.结合教师的讲解,来突破本次课程的重点和难点。教学资源及教学用具1.参考书:崔晓军,肖红宇,python程序设计基础,电子工业出版社,2023年1第1版。2.网络教学资源:传智播客网站:/3.教学用具:多媒体、笔记本(或台式机)电脑课后教学反思

教学过程设计步骤与时间主要任务教师活动学生活动设计意图与教学方法步骤一(2分钟)课堂组织考勤课堂准备严肃课堂纪律步骤二(8分钟)复习对学生汇报进行点评课前三分钟汇报提升学生的表达能力步骤三(30分钟)演示Print下format的格式输出讲解+实操演示边学边练课程思政;步骤四(20分钟)Join和split函数讲解+实操演示边学边练案例任务驱动步骤五(20分钟)Enumerate和zip函数讲解+实操演示边学边练案例任务驱动步骤六(10分钟)Lambda函数任务说明边学边练情境教学步骤七(30分钟)集合综合实例讲解+实操演示边学边练案例任务驱动步骤八(30分钟)课内综合练习讲解+实操演示边学边练案例任务驱动步骤九(10分钟)小结并作业布置总结;作业布置课堂小结;学生记录作业梳理知识点脉络;作业练习巩固授课详细内容[步骤一]利用超星学习通平台,进行考勤结果通报,做好事假迟到同学的记录。开启KK录像机,进行课程录屏,作为课程教学资源,上传超新学习通上,供学生课后回看再学习。[步骤二]2、复习回顾学生活动:利用课前三分钟汇报,了解学生对上次课的字符串和集合函数的掌握情况,以便查漏补缺,了解学生对这块知识的理解和实操情况。[步骤三]演示Print下format的格式输出教师讲解:针对format的格式输出细节讲解。主要分为:通过位置输出,通过关键字参数输出,#通过位置输出print("({0}),({1})".format('kze',18))具体来说,"({0}),({1})"是一个带有占位符的字符串模板,其中{0}和{1}是占位符。.format()方法用于将占位符替换为传入的参数值。在这个例子中,'kze'和18分别替换了{0}和{1}。print("{0:.1f}".format(18))在Python中,"{0:.0f}"是一个字符串格式化的表达式。其中:"{0}"表示第一个参数,即0。":"是分隔符,用于指定格式说明符和值之间的分隔。".0f"是格式说明符,表示将值格式化为一个整数,并保留0位小数。因此,"{0:.0f}".format(18)的意思是将数字18格式化为一个整数,并保留0位小数。输出结果为:"18"。学生活动:根据教师演示,进行实操。课程思政:诚信考试的重要性。教师活动:继续讲解输出的其他格式。通过关键字参数输出print("({name}),({age})".format(age=18,name='kzc'))通过下标输出p=['kzc',18]

print("({0[0]}),({0[1]})".format(p))这段代码的作用是将列表p中的元素按照指定的格式输出。其中,{0[0]}表示访问列表p的第一个元素(即'kzc'),{0[1]}表示访问列表p的第二个元素(即18)。通过使用format()方法将列表p作为参数传入,可以实现对列表元素的格式化输出。#格式限定符,语法是带冒号:且>号为右对齐.print("{:>8}".format(189))

print("{:0>8}".format('189'))

print("{:a>8}".format(189))这三行代码分别表示:1.`print("{:>8}".format(189))`:将数字189右对齐,占据8个字符的宽度,不足的部分用空格填充。输出结果为:`189`2.`print("{:0>8}".format('189'))`:将字符串'189'右对齐,占据8个字符的宽度,不足的部分用0填充。输出结果为:`00000189`3.`print("{:a>8}".format(189))`::将字符串'189'右对齐,占据8个字符的宽度,不足的部分用a填充。输出结果为:`aaaaa189`如果把其中>改为<,就是左对齐,如下所示#格式限定符,语法是带冒号:且<号为左对齐.

print("{:<8}".format(189))

print("{:0<8}".format('189'))

print("{:b<8}".format(189))再问:若要居中对齐,则如下所示#格式限定符,语法是带冒号:且^号为居中对齐.

print("{:^8}".format(189))

print("{:0^8}".format('189'))

print("{:b^8}".format(189))#精度常跟类型f一起使用

print("{:.2f}".format(321.33345))#.2表示长度为2的精度,f表示float类型#用,号做金额的千位分隔符

print("{:,}".format(1234567890))#注意:这里应该使用英文逗号#b、d、o、x分别是二进制、十进制、八进制、十六进制

print("{:b}".format(17))

print("{:d}".format(17))#注意:'dy'应该改为':d'

print("{:o}".format(17))#注意:这里应该去掉空格和去掉括号之间的空格

print("{:x}".format(17))#注意:这里应该去掉空格和去掉括号之间的空格[步骤四]Join和split函数教师讲解:join和split是一对互反操作,并且split在数据分析与爬虫中使用的非常频繁,应予以重点掌握。【示例4.14】join()函数与split()函数的用法示例。(1)使用join()函数,将不同元素组合在一起,代码如下:habits=['游泳','跑步','阅读','骑车']habits_str='、'.join(habits)print('我的爱好是:'+habits_str)运行结果为:作为互反操作,将上面的结果重新进行分割,利用split,如下所示sentence="我的爱好是:游泳、跑步、阅读、骑车"front,end=sentence.split(':')habit=end.split('、')print(habit)运行结果为:[步骤五]Enumerate和zip函数教师讲解:在Python中,enumerate()函数与zip()函数是两个常用的函数,它们的功能都是将两个列表组合在一起,经常将组合后的结果放置在一个字典中,方便后续处理。在之前讲解列表元素的遍历时,已经有涉及enumerate函数的使用。这里进行巩固训练。教师活动:对于该案例,教师做思路分析:1)提示学生要做遍历;2)引导学生打开菜鸟教程中字典里的方法,让他们去找到最适合的方法进行配对。教师希望学生找到setdefault方法。【示例4.15】将列表中的所有元素与其对应的索引值组成键值对放入一个字典内,打印字典的内容。habits=['游泳','跑步','阅读','骑车']my_dict={}fori,habitinenumerate(habits):my_dict.setdefault(i,habit)print(my_dict)运行结果如下所示:小结:从输出结果可知,使用enumerate()函数将原有列表中的各元素与对应的索引组合在了一起,最后放入字典中,在后续的业务逻辑中,可以多样地处理各自元素。学生训练:学生查找字典里的正确方法,完成该案例。教师讲解:zip方法也是常用的方法。该函数用于将多个可迭代对象作为参数,依次将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,与enumerate()函数一样,一般也用在for循环中。【示例4.16】处理三个列表,将它们的内容放在一个字典内。其中第一个列表作为键,后两个列表将内容拼接作为值。names=['张三','李四','王五','赵六']sexs=['男','女','男','女']habits=['游泳','跑步','阅读','骑车']new_dict={}forname,sex,habitinzip(names,sexs,habits):new_dict.setdefault(name,sex+','+habit)print(new_dict)运行结果如下:[步骤六]Lambda函数教师讲解:lambda是Python编程语言中使用频率较高的一个关键字。lambda是Python预留的关键字,它的语法如下所示。lambdaargument_list:expression这里的argument_list是参数列表,它的结构与Python中函数(Function)的参数列表是一样的。expression是一个关于参数的表达式。表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的。lambda函数一般功能简单。单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成非常简单的功能。教师演示:对于lambda函数做一些简单演示。(1)定义一个匿名函数,接收两个参数,将两个参数的乘积返回,代码如下:mult=lambdax,y:x*yprint(mult(5,10))(2)定义一个匿名函数,接收三个参数,将三个参数的计算结果返回,代码如下:cal=lambdax,y,z:(x+8)*y-zprint(cal(5,6,8))小结:从以上示例可以看出,通过lambda省去了烦琐的函数定义,加快了开发的速度。然而,由于其语法的定义决定表达式只能是单行的,故此无法实现复杂的业务逻辑。实际上,关于lambda在Python社区是存在争议的,Python程序员对于到底要不要使用lambda意见不一致。无论如何,Python里提供的这种便捷方式,是很多语言都没有的。学生活动:学生模仿教师操作,做lambda的练习。[步骤七]集合的综合实例教师讲解:讲解有关python下的random模块.对于这块,可以看菜鸟教程中的random的使用.案例说明:这部分例题来自于其他python教材,作为本教材的补充案例.用户输入任意一个数字,判断该数字是否在集合s="ss",1,3,5,9,'a',"kk","sky","notcbook")中。若存在则随机删除集合s中的一个元素并输出该元素,若不存在,则返回该数字不在集合S中!importrandoms=["ss",1,3,5,9,'a',"kk","sky","notcbook"]user_input=input("请输入一个数字:")ifuser_inputins:s.remove(random.choice(s))print("随机删除的元素是:",user_input)else:print("该数字不在集合S中!")小结:此处关键是random下的choice方法的使用.[步骤八]课内综合练习教师布置课内任务:将字符串段落解析成姓名和爱好的字典。字符串段落如下:张三喜欢旅游、爬山李四喜欢骑车、阅读王五喜欢打球、跑步文本解析后的效果,如图4.31所示。教师分析:教师不给学生展示解

温馨提示

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

评论

0/150

提交评论