龙源期刊网 http://www.qikan.com.cn
Python语言程序设计课程教学改革与实践
作者:金传洋 王丽辉 罗晓玲 郑斯文 来源:《电脑知识与技术》2024年第18期
摘要:Python语言是目前国内高校非计算机专业语言课的首选。本文从课程定位与需求出发,深入分析Python语言特点和教学现状,结合多年程序设计开发经验,提出一些相应的改进措施,积极探索高效的教学思路、教学方法和教学手段。 关键词:Python;教学改革;案例式教学;任务驱动;教学质量 中图分类号:TP399; ; ; ; 文献标识码:A 文章编号:1009-3044(2024)18-0114-02 1 引言
程序设计基础(Python)是军队院校生长军官学历教育本科学员必修的科学文化基础课程。通过本课程学习,使学员掌握Python语言的基本语法,能够理解Python的编程模式;熟练使用集成开发环境和调试方法,掌握面向对象程序设计的基本概念以及设计方法;培养算法分析与程序设计能力,培养和提升学员以计算思维为核心的信息素养,学会运用计算思维方法发现问题、分析问题,积极寻找问题的有效解决办法。课程内容主要包括:Python语言基础知识、控制结构、运算符与表达式、函数、类与对象、文件操作及异常处理、图形绘制、交互式
龙源期刊网 http://www.qikan.com.cn
应用程序的操作与使用等。采取教学活动主要有:MOOC视频、操作实习、单元测验、项目设计、考核评价(期中、期末)等。
本课程共48学时,教学内容共分为10个单元,包括为:第1单元程序设计概述(Python语言基础)、第2单元程序控制结构(分支结构、循环结构)、第3单元数据类型(基本数据类型、字符串列表字典)、第4单元函数及使用(函数定义及使用、变量作用域)、第5单元算法与数据结构(算法与数据结构、典型算法实现)、第6单元文件与异常处理(文件与异常处理、文件与异常处理操作)、第7单元面向对象程序设计(面向对象概念、类与对象操作I、类与对象操作II)、第8单元图像界面设计(Python数据实现、常用组件I、常用组件II)、第9单元综合案例(综合案例Python实现)、第10单元图形绘制(图形绘制操作I、图形绘制操作II)。
结合往年教学实践和今年教学安排,增加了课前MOOC自主学习环节,通过视频资料学习,了解相关理论知识背景,实现精准导学、做好提前预习;课上对重点知识进行精讲、对操作实践知识采取机房模式,理论与实践相结合,激发学员主动学习兴趣,提高学员的动手能力。
2问题与目标需求
Python 是一种解释型、面向对象和交互式的脚本语言,在1991年发行了第一个公开版本,其语法形式简单、明确而优雅,和自然语言非常接近,无需花费大量时间学习枯燥的语法规则和计算机组成原理,学习门槛大大降低。
Python 语言开源,为我们提供了非常完善的基础代码库,涵盖了网络、文件、GUI、数据库、文本等大量内容。除了这些内置库外,Python还拥有丰富的第三方扩展库,供使用者直接调用,用户结合本专业实际需求,能够高效地编写源代码和可用程序,尤其在近年的人工智能、图像识别、自然语言处理等领域得到深度应用。
当前,Python 语言已经成为美国大学最受欢迎的程序设计语言。在国内,自北京理工大学2013年开课以来,全国近百所高校都相继开设Python语言设计课程,教学改革开展得如火如荼,Python已成为面向非计算机专业学习的首选语言了。 目前,Python语言程序设计课程存在如下问题: (1)教学方式不够灵活
近些年,中国教育在积极地探索新思路,取得了丰硕的成果,但是传统教学模式依然没有被彻底改变,学员仍被动接受,其主体地位也没有被充分发挥出来,导致课堂教学质量不太理想。众所周知,程序设计课是应用性很强的课程,应该更加突出实践应用能力,尽管有些内容采取了机房授课模式,但实际效果并不好,很重要的原因,就是这种模式对教员驾驭课堂能力和素质要求很高,如果不能充分调动学员自主学习能力,授课质量将很难达到。
龙源期刊网 http://www.qikan.com.cn
(2)授课教员发展受限
计算机公共基础课授课对象一般面向全校学员,人数分布广,需要配备大量教员,教学任务相对较重,通常面临着“僧多粥少”的尴尬局面。由于授课任务饱满,教员没有更多精力投入到科研项目和教学研究,长此以往担任基础课教员都会遇到业绩不饱满、能力提升慢、职称晋升难等问题,也对教员积极性有一定的挫败,反过来,也会使教学效果受到影响。 (3)能力培养需要进一步强化
前面已经介绍,由于Python语法简单,在教学实施过程中不需要花费大量时间讲解其语法规则,应将更多的精力花费在实践操作和应用上,但是,Python语言又具有灵活的面向对象和模块化设计思想,能与其他语言协作完成复杂项目的混合编程,这些编程理念与技巧,大大地提升学员逻辑思维能力,也能培养学员利用Python语言工具解决综合问题的能力,不过很难用一个个知识点的教学或者简单的案例教学法实现,需要通过较综合的项目实例或者课程大作业方式来实现教学目标。 3教学措施与实践
在Python教学实施过程中,我们抛弃传统语言程序设计中精讲语法这种模式,采用由案例项目驱动,逐步推进的形式,抽取知识点,使这些知识点串起一个主线,教学过程就是为项目设计服务,当所有知识点学习完成,整个项目设计过程也水到渠成了。这种项目驱动式教学,需将课程结构分割为若干小单元,且使各单元之间保持完整的逻辑顺序,其内容可以由易到难、由简单到复杂、由少至多,循序渐进,逐渐增加难度,增强学员的学习兴趣和成就感,如表1所示。
第一阶段是认识Python,时间持续为两周。教学内容包括计算机基础知识、Python基础知识,有趣小程序等,比如:杨辉三角、九九乘法口诀表、冒泡法排序、二分法查找、求100以内素数、菱形绘制等。课后练习是让学员自主阅读程序,执行代码,深刻体会结果与代码之间的对应关系,让学员深刻理解计算机解决实际问题基本步骤:输入—处理—输出,从而构建Python程序整体框架,为后续学习打好基礎。
第二阶段是会读阶段。通过实例拆解、程序阅读、重点剖析等方式引导学员总结计算机解决实际问题的整个流程。一个好程序就好比一件艺术品,内涵丰富,包含了很多要素,无法用一段文字来具体地描述,要求学员仔细品味程序代码,通过深入剖析总结,学员可以归纳出Python程序设计的基本框架、基本技巧与方法,其重要性不言而喻。这种教学模式,从第3周开始就能一直持续下去,学习者研读的程序越多越深入,其编程技能也将更加娴熟。 第三阶段是会写阶段。编写任何语言的程序,都是很严谨认真的事情,需要正确的方法、准确的思维和缜密的判断,一方面培养学员的科学严谨的治学作风,另一方面养成积极思考、主动解决问题意识,这对于学习能力培养非常有必要。对于编程零基础学员来说,教员需要花