APP下载

案例教学法在Python语言程序设计教学中的应用

2021-06-29张乐

计算机时代 2021年4期
关键词:案例教学法

张乐

摘  要: 为了提高Python語言程序设计课程教学质量,文章采取案例教学法设计了案例“身体质量指数BMI”,通过设计案例、分析案例、总结归纳、拓展应用等四个过程对Python分支结构教学过程进行了具体分析。实践证明,案例教学法能够激发学生的学习兴趣,调动学生学习的积极主动性,提高学生分析问题和解决实际问题的能力,从而提高了Python语言程序设计的教学效果。

关键词: Python程序设计; 案例教学法; 分支结构; 教学过程分析

中图分类号:G642.0          文献标识码:A     文章编号:1006-8228(2021)04-72-03

Abstract: In order to improve the teaching quality of Python language programming course, this paper adopts the case teaching method by designing the case of "body mass index BMI", and analyzes the teaching process of Python branch structure through the four processes of case design, case analysis, summary and application expansion. Practice has proved that the case teaching method can stimulate students' interest in learning, mobilize students' initiative in learning, improve students' ability to analyze and solve practical problems, which improves the teaching effect of Python programming course.

Key words: Python programming; case teaching method; branch structure; teaching process analysis

0 引言

Python语言是一种生态语言,是一种简洁且强大的语言,是一种开源的脚本语言,是仅次于C语言的第二语言[1]。传统教学过程中,采用填鸭式教学,以教师为主体将算法思想和程序代码灌输给学生,在没有理解思想的基础上编写代码十分困难,无法调动学生的积极性,也无法真正理解分支结构的意义和实际应用。因此,基于案例教学法,采用学生主体教师主导的模式,设计并引入案例,引导学生分析案例并总结归纳程序语法特点及流程图,从而编写程序解决实际问题,能够充分调动学生学习兴趣,拓展自主思维能力,熟练掌握语法知识并灵活运用从而解决实际问题。

1 案例教学法概念

案例教学法是19世纪70年代由美国哈佛大学法学院院长兰德尔提出来的,20世纪30年代开始广泛应用于商业教育中,20世纪70年代后迅速在普通教育领域普及。案例教学法是根据教学目的,用案例来组织学生进行学习、研究和锻炼能力的方法[2]。

案例教学法主要是采用启发式教学,以案例为基本素材,以学生为主体,将其引入一个真实情境中,引导学生根据案例内容展开讨论、质疑和反思等活动,培养学生综合运用知识解决实际问题的能力[3]。

2 Python分支结构概述

程序由三种基本结构构成:顺序结构、分支结构和循环结构。分支结构在三种结构中具有承前启后的作用,“前”是对顺序结构的深化认识,“后”是为学习循环语句做铺垫[4]。分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式。分支结构主要包括三种分支:单分支、二分支和多分支,通过if语句实现。本文主要以多分支if-elif-else为基础设计案例,采用“设计案例-分析案例-总结归纳-拓展应用”案例教学思路对三种分支结构进行具体分析。

3 案例应用过程

3.1 设计案例

教师根据学生兴趣和实际情况,设计案例“身体质量指数BMI”并将案例代码呈现给学生观察:

height=eval(input("请输入身高(米):"))

weight=eval(input("请输入体重(公斤):"))

bmi=weight/pow(height,2)

print("BMI数值为:{:.2f}".format(bmi))

if bmi<18.5:

print("偏瘦")

elif bmi<24:

print("正常")

elif bmi<28:

print("偏胖")

else:

print("肥胖")

引导学生结合学过的知识阅读程序,并在Python运行环境IDLE中运行程序,效果如图1所示。

3.2 分析案例

【提问】观察运行结果,教师提问:该程序的功能是什么?

学生进行分组讨论,教师指导得出结论:该案例根据输入的身高和体重值计算BMI结果,并根据结果输出对应的四种体型:偏瘦、正常、偏胖、肥胖。根据分析结果,画出流程图如图2所示。

由此可看出该案例属于多分支结构,采用if-elif-else语句实现,根据条件判断结果执行其中一条语句。如果BMI<18.5,输出“偏瘦”,否则(即BMI>=18.5)继续判断第二个条件BMI<24,输出“正常”,否则(即BMI>=24)继续判断第三个条件BMI<28,输出“偏旁”,若都不成立(即BMI>=28),输出“肥胖”。

【提问】提示学生将程序中的elif语句全部删除,运行程序观察结果并分析程序功能。

删除后主要程序代码如图3。

if bmi<18.5:

print("偏瘦")

else:

print("肥胖")

运行后效果如图3所示:

学生分组讨论,教师引导学生画出流程图,并得出结论:删除elif后的案例只有两种结果,若BMI值<18.5则输出“偏瘦”,若BMI值>=18.5则都输出“肥胖”。由此可见删除elif语句后,if-else格式是二分支结构语句,根据条件判断选择两种结果中的一种执行。

【提问】将程序中的else语句删除后,观察运行结果,分析程序功能。

删除后主要代码如图4。

if bmi<18.5:

print("偏瘦")

运行程序结果如图4所示:

引导学生观察运行结果,并多次测试,发现程序运行只有一种输出结果:若BMI值<18.5则输出“偏瘦”,其他BMI值不输出。由此可见,if语句表示单分支结构,根据条件判断,只执行一种结果。

3.3 总结归纳

根据以上案例分析结果,教师引导学生总结出在Python语言程序设计中分支结构有三种:单分支、二分支和多分支。

⑴ 单分支结构:if语句

语法结构如下:

if <条件>:

<语句块>

流程图如图5所示。

if语句首先判断<条件>的结果值,如果结果为True,则执行语句块里的语句序列,然后控制转向程序中的下一条语句。如果结果为False,语句块里的语句会被跳过,控制转向程序的下一条语句。

⑵ 二分支结构:if-else语句

语法格式如下:

if  <条件>:

<语句块1>

else:

<语句块2>

流程图如图6所示。

if-else语句首先判断<条件>的结果值,如果结果為True,则执行语句块1里的语句序列,如果结果为False,则执行语句块2里的语句序列。

⑶ 多分支结构:if-elif-else语句

语法格式如下:

if <条件1>:

<语句块1>

elif<条件2>:

<语句块2>

...

else:

<语句块N>

流程图如图7所示。

if-elif-if语句先判断条件1是否成立,若成立执行语句块1;不成立则判断条件2是否成立,成立执行语句块2,否则继续判断条件3以此类推。当所有条件不成立,则执行else下面的语句块。

3.4 拓展应用

了解分支结构的三种分支后,为了巩固所学知识并将知识点应用到实际案例中,设计案例“PM2.5空气质量提醒”,要求学生编写程序并实现效果:

输入PM2.5值,并输出相应的空气质量提醒。

如果PM2.5值<35,打印“空气优质快去户外运动!“

如果35<=PM2.5值<75,打印”空气良好,适度户外活动!”

如果PM2.5值>=75,打印“空气污染,请小心!”

教师引导学生分析案例:案例中有三种情况,即三个分支。因此可以采用多分支结构if-elif-else结构实现,代码如下:

PM=eval(input("请输入PM2.5数值: "))

if 0<=PM < 35:

print("空气优质,快去户外运动!")

elif PM <75:

print("空气良好,适度户外活动!")

else:

print("空气污染,请小心!")

【提问】是否可以用单分支实现?

多分支可以理解为多个单分支,可以将案例中的if-elif-else改写为三个if语句来实现,代码如下:

PM=eval(input("请输入PM2.5数值: "))

if 0<=PM<35:

print("空气优质,快去户外运动!")

if 35<=PM<75:

print("空气良好,适度户外活动!")

if 75<=PM:

print("空气污染,请小心!")

4 结束语

本文针对Python中的分支结构,设计“身体质量指数BMI”案例,采用案例教学法(引入案例-分析案例-总结归纳-拓展应用),形象生动地分析了三种分支结构运行效果及语法格式特点,并引导学生自主总结要点从而应用到其他实际案例中。由此可见,案例教学法能够激发学生的学习兴趣,调动其积极性和主动性,提高分析问题和解决实际问题的能力,案例教学法将理论知识和实际操作紧密结合,从而提高了Python语言程序教学的课堂效率。鉴于此,期望将案例教学法融入到相关程序设计课程各个环节,真正做到教学方法和教学过程的融合,进而将案例教学法应用到各科教学过程中,从而提高整体教学质量。

参考文献(References):

[1] 嵩天,礼欣,黄天羽.Python语言程序设计基础(第2版)[M].高等教育出版社,2017.

[2] 郑均辉,李玮瑶,李圣普.C语言程序设计课程案例教学法探讨与研究[J].内江科技,2001.10:37

[3] 邵雪梅,马骏,程辉.案例教学法在“C语言程序设计”课程中的应用[J].新乡学院学报(自然科学版),2012.29(3):283-284

[4] 廉侃超,李霞.案例教学法在VB程序设计选择结构教学中的应用[J].运城学院学报,2014.2:92

猜你喜欢

案例教学法
采用案例教学法,优化高中政治课堂教学
中药制剂分析教学改革的探索及应用
案例教学法在学科教学论教学中的应用
初中思想品德课案例教学
广告学专业《社会学概论》教学研究
案例教学法在高等职业院校口腔内科学教学中的应用效果
案例教学法在高职经济数学教学中的应用
案例教学法在技校企业会计课教学中的运用策略探讨
房地产项目策划课程案例教学探索与实施
高职院校《货币银行学》课程案例教学法的运用