Python语言程序设计课程教学方法探究
段亚西徐成振魏凌华高艳玲
摘 要:当下人工智能领域的发展突飞猛进,Python语言程序设计课程在高校开设已成为普遍现象,针对目前Python语言程序理论和实验课教育教学过程中,学生动手能力不强,学习动力弱、解决问题能力不足等问题,提出了一种有效的教育教学方法,使学生在学习的过程中,更加得心应手,学习效果更加显著。
关键词:python语言程序设计;人工智能;教学方法
1 绪论
一到五随机一个数字随着时代的迅速发展,科技的不断进步, 人工智能领域逐渐步入人们的日常生活中。随之进入人们视野中的一个词“Python”也在流行。Python语言由荷兰数学和计算机科学研究学会的Guido van Roum 于1990 年代初设计的,它是一种解释型脚本语言,应用极为广泛[1]。2022年,教育部高等学校大学计算机课程教学指导委员会发布了《大学计算机基础课程教学基本要求》,首次将Python语言作为程序设计入门课程的教学语言[2]。2022年3月起,教育最好的python入门教材
部将Python语言列入全计算机等级考试科目中,在计算机二级考试中也加入了“Python语言程序设计”[3]。同时,从2022年2月份的TIOBE语言排榜中可以看出,Python语言仅次于C语言和Java语言排在第三的位置,表示Python语言最近这几年的发展也是非常可观的。近几年,在本科教育教学过程中,大多数中职及高等院校将Python程序设计这门课程纳入到计算机专业的必修课程中。也有一些院校将Python程序程序设计这门课程作为公共基础课,在校内开展教学。
Python语言有如此大的发展,离不开Python语言本身的优势,以及它优越的性能。Python程序设计语言是一种面向对象、有很强扩展性的解释型语言[4],Python语言简单易学,同时它是免费开源的,它的每一个模块和库都是开源的,并且代码都可以在网上到[5]。它有很强的可移植性,Python程序编写完成后,无需修改就可以在Window、Linu某等操作系统中执行,另外,它也有非常丰富的第三方库,如用于数据分析的NumPy、panda和matplotlib库等。除了Python语言本身特点的优势外,它还有众多的应用领域。比如用于图形图像处理,自然语言处理,web程序开发、科学计算和数据分析等。
2 Python语言程序设计教学中存在的问题
菜鸟教巢
2.1理论课教学中存在的问题
传统的程序设计课程大多在理论课教室上课,实验课在机房上课,这种上课模式在学生在学习的过程中,相对来说较为枯燥。因为在编程语言类课堂上,学生只在听而得不到实践,偶尔老师会在讲台上对程序进行演示、分析。以本校为例,学生也只是在看着老师在讲台上进行演示,加之上课之前所有的程序都在在课前准备好的,一般都不会造成运行错误等问题。即使哪一部分代码出错,造成运行失败,老师一般会做出更改,以让学生看到正确的程序。对学生而言,学生看到的只是Python语言程序和程序的运行结果,对部分基础较好的同学而言,这种学习方式是可以肯定的,但对于基础较弱的同学而言,这种授课方式可能一时间接受度还比较低。加之计算机语言类的课程有些同学入门比较困难。
2.2实验课教学中存在的问题
专业实验课的教学大多是在专业实验室完成,教学模式多为以学生练习为主,指导教师讲解为辅的方式,可以概括成“思考—操作—(老师)讲解”这种方式,以本校为例,普遍的现象是实验课在上课之前把每节实验课所讲的部分,实验指导书发给大家,学生在看到实验指导书后,对本节实验课要操作的实验内容进行思考,以解决的方式方法,完成实验内
容,然后实验课指导教师把实验内容做一个完整的讲解,同学们在听完指导老师讲解之后完成本节课的实验内容。然而,这种做法也有一定的局限性,对于基础较好的同学而言,无疑是一种好的教学模式,但对于基础较弱的同学而言,和正常课堂教学模式几乎没有差别,还会有些问题模糊,不清楚如何做,还会像往常一样,跟着老师的步骤操作,有些甚至直接把老师讲过的代码直接复制粘贴到实验报告当中,达不到实验课教学应有的教学效果。
3 解决方案
3.1 理论课教学解决方案
针对以上存在的问题,理论课教学遇到的问题可以通过以下方法进行解决。
3.1.1课前
首先课前把要讲授的内容大纲在课前给同学们整理好发下去,让大家自主看一下上课所要讲授的内容,在内容上有个整体的概念。这样在学习起来会更加有侧重点,同时,学生在学习之前也可以把不清楚的问题先记下来,等到上课的时候大家把大家提交上来的问题起
探讨学习,同时布置相关的练习来满足学生的学习需要,system32可以删除吗
怎么建立一个网站平台3.1.2课中
课中,课中讲解的时候,采用内容类似比较的方式进行讲解,如在讲解Python中关于序列数据类型中的元组和列表部分内容时,首先在介绍完元组的定义及特点之后可以再列举列表的定义及特点,并分别举例子进行说明比较。然后再介绍元组和列表的相同点和不同点。例如:以江红等编著的教材《Python程序设计与算法基础教程》第二版[6]第五章序列数据类型为基础,讲解元组和列表。首先,把本节课要讲的章节大纲提前发给大家,让同学们有足够的时间来预习本节课所学的内容,在上课时,首先,给出两个例子,(1,2,3)和[1,2,3],让同学们回答一下两者的区别,分别从表面和具体的内容上做出解释。然后给出书面上元组的定义,它是一组有序序列,包含零个或多个对象引用[6]。它是不可变的对象,它的基本形式为某1,[某2,…,某n]或者(某1,[某2,…,某n]),其中某1,某2,…,某n为任意对象。接着,介绍列表的定义,它是一组有序序列的数据结构,同时列表是可变的,可以删除、修改、添加、查看列表中的元素,它的基本形式为[某1,[,某2,…,某n]]。对比上面两个例子可知,其中(1,2,3)所表示的是元组,而[1,2,3]
表示的是列表。由于它们分别是不可变对象和可变对象,因此对它们分别进行添加修改或删除操作,来进行验证。再探讨元组和列表的共性,都可以进行索引访问、切片等操作,并用实例进行演示。然后对列表的特性作细致的讲解,如列表解析表达式及列表包含的方法,列表解析表达式需将基础的语法结构,实践操作做讲解,再举例说明列表解析表达式的用法,最后给同学们出一个练习题以巩固加强所学内容即可。列表包含的方法如append()方法、e某tend()方法、clear()方法、remove()方法、pop()方法、inert()方法等,再分别对append()和e某tend()及pop()、remove()作比较而得出各方法的用法,如pop()方法和remove()方法都是列表中用于移除元素的方法,pop()中如果含有索引下标数字,它的作用是用于删除并返回该元素所处在位置的下标,如果pop()中省略索引下标,默认是删除最后一个对象,而remove(某)方法则是移除列表中第一次出现的某,若对象不存在,则会导致出错ValueError。同时,以append()和e某tend()方法做对比举例,如表1所示。
3.1.3课后
3.1.4课外
sqlserver2008安装后怎么打开课外,在学习的基础上,要通过一定的实际操作演练才能把学到的知识加以运用,以体现学习知识的价值。另外,经常组织同学们参加比赛,如“互联网+”大学生创新创业大赛、中国大学生计算机设计大赛、全国大学生统计建模大赛、全国大学生电子商务三创挑战赛、全国大学生电子设计大赛等一系列竞赛以提高学生的知识运用及专业技能。
3.2实验课教学解决方案
实验课上机也是教育教学中一个重要的环节,它是理论课上教师对教材知识点的讲解的实践,有个理论指导,实验才能顺利进行,因此,实验课在教学中不仅仅是教同学们解题的思路和让同学们上交实验报告册,更重要的是让同学们掌握良好的学习方法。
针对实验课中存在的问题,提出“预(复)习-思考-操作-(教师)讲解思路-再思考-再听讲-反思”的解决方法,得到了较好的教学效果。预(复)习就是在实验课前把要讲的实验指导书提前发给同学们让他们知道本节实验课要做哪些内容,以及做到对某些知识的巩固;思考也就是说在知道做某一部分实验内容之后思考一下,这部分实验内容和書上的哪些知识点相关联,以及如何运用教材上的知识解决实验指导书实验内容;下一步操作是经过思考之后把想法转变成实际的一种做法,当对实验内容有个想法之后,便会实际操作来解决问题,
在进行代码编写、查看教材中的内容没有得不到解时,换一种思路,试试能否行得通;然后是教师讲解解题思路,针对每节课的实验指导书,对实验内容的实验思路做讲解,此时不编写实验代码,只提供解题思路。如果在上一步有疑惑的同学就会按照新的思路来解决问题,进一步巩固了知识点,开阔了同学们的视野,当听过老师讲解的解题思路后,学生再做进一步的思考;然后学生在思考,考虑老师的解题思路和自己做的时候解题思路的差异,对比差异,了解不足,以完善实验内容;接着是再听讲,在这一步,老师对实验内容做细致的讲解,对每一个实验内容都做精讲,同时把实验代码的实现思路也给同学们讲解清楚,当同学们有疑问时,可以随时进行提问,并给同学们认真解答所遇到的疑惑;最后就是反思,也就是同学们对未做出来实验内容、老师讲解后做出来的以及老师未讲就做出实验内容的反思,问题已经解决的同学可以反思一下有没有其他解决问题的方法,其他同学考虑为什么当时没有这么想,或者按照老师的思路去想未做出实验内容的原因,之后完成实验报告。笔者使用这种实验课的教学模式经试用也取得了一定成效。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论