周蓉

摘要:Python语言有着简洁,高效和生态的三大特点,在中职学校引入计算机程序设计Python语言课程的教学,可以培养学生解决问题的思维能力,可以面向问题引发兴趣培养思维能力,引导创新。实践表明,在中职学校开设Python程序设计语言课程,可以有效地提高学生学习程序设计的兴趣,激发学生的创新思维和创造能力,取得良好的教学效果。

关键词:Python语言 程序设计 解决问题 教学设计

一、Python语言发展现状

Python是一种动态的、面向对象的脚本语言。它可以作为首门程序设计课程纳入中职计算机教学的课程中,Python语言更适合编程零基础的学习者入门,相比较其他不少主流编程语言,Python有更好的可读性,因此上手相对容易。如今,随着语言编程课的发展,Python程序语言教学成为很多学校学习程序设计的入门课程。Python可以让初学者把精力集中在编程对象和思维方法上,让初学者专注于编程逻辑,把主要精力放在解决应用问题的思维能力培养上。

Python语言有着简洁,高效和生态的三大特点。

Python的语法虽然简洁,却具有完整的语法逻辑.可以进行语句级、面向过程和面向对象的程序开发,与其他语言相比,Python能更加准确地表达算法和程序逻辑意图。Python代码编写高效,实现同样功能的一段代碼,Python编写的代码更少,代码少意味着执行效率高,实现时间短。Python语言还被称为是一种生态语言,它在计算生态的大环境下诞生、发展以及再生,其简洁和面向生态的设计理念得到了广泛认同,形成了全球范围最大的单一语言编程社区。

二、程序设计课教学现状

在传统的中职计算机教学中存在一系列的问题。

1.中职学校的学生计算机基础参差不齐。他们来自于全省各个地区,由于地区的差异性,很多来自偏远地区的学生大部份没有接触过计算机学习,所以一开始就学习程序设计语言课程,会很吃力,而且部分中职学生学习能力较弱,逻辑思维和计算思维较差,面对程序设计语言课程内容,刚开始抱着很浓厚的学习兴趣,但当接触到一些复杂的算法和逻辑思维很强的程序时,课程就会变得枯燥,学生也会因为理解不了,觉得难而放弃学习。

2.传统教学忽略了对思维的培养。在传统教学当中,以教师为中心,教师讲学生听,教师过于注重教会学生,而忽略对学生思维的培养,学生只需敲打录入老师设计好的程序,运行成功就行,不必做深入的思考,更不用理解程序的内容。这样更像是进行打字和记忆力的训练,根本锻炼不了思维能力。他们往往只关注程序的运行结果,而忽略程序的设计过程,无法形成一种有效的思维模式,从而将大量时间花在死记硬背上。

三、为什么要学习程序设计

因为程序设计是一件很有趣的事儿。

1.学习程序设计可以训练思维。程序设计是一个求解决问题的过程,在设计程序之前,首先要分析需要解决的问题,接着要细化解决问题的步骤,设计求解问题的方法,进而通过编写和调试代码来解决问题,这是从抽象问题到解决问题的完整过程,在这过程中,可以促进思维的训练。

2.学习程序设计可以提高效率。计算机已经成为当今社会的普通工具,掌握一定的程序设计方法可以有效地利用它来解决一些计算问题。例如,在处理大量工作数据的时候,可以通过程序按照特定算法来进行批处理或绘制统计图表掌握一些编程技术能够提高工作、生活和学习效率。

3.学习程序设计可以带来就业机会。程序员是信息时代最重要的工作岗位之一,国内外对程序员的缺口都在百万级及以上规模,就业前景广阔。程序员职业往往并不需要掌握多种编程语言,精通一种就能够获得就业机会。中职学校开设程序设计课程,完全符合中职学校为社会提供就业人才的培养模式。

四、Python语言培养思维能力的教学设计

图形绘制的教学设计:举一反三,训练学生观察图形的变化,引导学生思考,通过改变哪一句程序,来实现不同图形的变化,培养学生思维能力,通过对比,改变程序内容,发现用Python语言可以完成不同图形的绘制。

学生在本节课的学习中,通过不停地引导学生的思考,改变程序的内容,学生发现通过小小的改变,却能得出不同的图形,激发起学生强烈的学习兴趣,他们尝试着把角度变换不同的大小(从0°360°),得出更多变化的图形,让学生眼前一亮。(如图1)

学生通过此课的学习,举一反三的将图形进行不同的变化,通过语言中对角度、颜色、大小等不同值的变换,绘制出不同的图形,培养学生主动思考,将思维能力运用到实践中。(如图2)

Python代码的书写规则近似于英语,学生易于拼写,减少了书写错误的概率。对于中职学生,本身计算机知识不太扎实,少接触程序设计的学习,Python语言的简洁、高效和生态的特点就更适合中职学生的学习。

在传统程序设计课程中,学生仅将教师的代码敲进去并运行出结果就停止了思考与学习,这样丝毫锻炼不了学生思维能力。而Python话言教学,教师不再单纯给出答案,而是由问题引入,分步引发学生再次思考。首先从角度的改变去激发学生思考,再让他们去尝试改变数据而获得结果;其次从图形的颜色和大小去提问,哪一句Python语言是改变图形颜色和大小的?由于学生在整个课堂中是自主思考的,所以在教师讲解时就容易抓住重点,针对自己思考过程中的问题再次反思。经过这一系列过程,学生不但牢固掌握了知识,也不再单纯信赖教师“解惑”,而是掌握了自己发现问题、思考问题的学习技能。

五、结束语

基于培养思维能力的Python语言程序设计教学模式,以培养学生主动思考为主,充分发挥学生主观能动性,通过教师的引导让学生爱上学习,发现问题,主动求解问题。而教师的角色也从原来的告知问题答案,变成培养学生自主思考寻找解答问题的方法。这样虽然有效地培养了学生积极主动思考的思维能力,但也存在弊端,对于学习积极性较弱的学生这种过度依赖于思考才能寻求答案的解题模式,反而会让他们不知所措,因此,如何权衡学生自主思考学习与被动接受学习,值得我们继续深入探究。

参考文献

[1]罗旋,张硕Python语言程序设计课程建设初探[J].2018(5)14-14.

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

学python可以改善思维_基于培养思维能力的Python语言程序设计教学相关推荐

  1. 高中生学python培养思维能力_基于培养思维能力的Python语言程序设计教学

    教育信息化 数码世界 P .203 基于培养思维能力的 Python 语言程序设计教学 周蓉   东莞市商业学校 摘要 :Python 语言有着简洁,高效和生态的三大特点,在中职学校引入计算机程序设计 ...

  2. python 乡镇轮廓 高德_基于高德地图api和Python的区县地理边界坐标提取

    在工作中,经常想用到类似于地热图的方式进行数据展示,奈何工作环境是内网,无法在线进行地图关联,没办法,只好自己想办法上网找边界坐标. 查了很多文档和费心以后,最终发现高德地图api的方法和方式最简单, ...

  3. c语言程序设计臧,C语言程序设计教学中计算思维培养.pdf

    Advances in Education 教育进展, 2014, 4, 36-41 Published Online May 2014 in Hans. /journal/ae /10.12677/ ...

  4. 大学计算思维c语言答案,【程序设计论文】计算思维为下的C语言程序设计教学(共2755字)...

    摘要:分析计算思维对大学生的培养非常重要.本文提出C语言程序设计课程加强计算思维的训练,比单纯讲授知识更重要,将计算思维方法在课程教学中加以运用,可以提高学生综合分析问题和解决问题的能力. 关键词:C ...

  5. c语言教学理念和思路,基于CDIO教育理念的C语言程序设计课程教学改革.doc

    基于CDIO教育理念的C语言程序设计课程教学改革 [摘要]C语言程序设计是一门实践性很强的课程,但目前该课程的教学环节存在实践教学相对薄弱等弊端.本文结合我院教学改革,尝试将CDIO工程教育理念应用于 ...

  6. 红灯停绿灯行c语言编程,基于物联网应用的《C语言程序设计》教学模式研究

    [摘要] 物联网是信息技术的最新发展发向,C语言程序设计又是物联网相关专业中的基础课,在物联网中的应用广泛,本文结合所任教的技工院校学生特点,在分析了C语言教学中存在的问题后,对C语言的教学模式进行了 ...

  7. java 教案_关于Java语言程序设计教学设计的几点思考

    摘要:本文主要通过本人多年的工作经验对Java语言程序设计教学设计中应用问题进行了思考,以此设计出更加合理教学方案,以此优化教学资源的利用,在此基础上利用Java语言调动学生的学习积极性,提高教学效率 ...

  8. 基于计算思维的python程序设计王彬丽期末考试题库_基于计算思维的程序设计类课程教学实践...

    基于计算思维的程序设计类课程教学实践 滕剑锋 王玉锋 王 猛 刘二林 [摘 要] 摘 要 很多专业开设了程序设计类课程.如何在该课程教学中培养学 生的创新能力是大家普遍考虑的问题.计算思维的提出对于解 ...

  9. 用python做炒股软件-python程序源码_基于python的炒股软件

    股票模拟交易系统设计与实现 不但能够进行界面的设计,还可以实现各个窗口的关联,通过WPF实现和其余窗口的关联,而且WPF中的类不但能够和其中一个窗口进行关联,还可以跟许多功能操作接口,WPF在对窗口对 ...

最新文章

  1. [Swift]LeetCode160. 相交链表 | Intersection of Two Linked Lists
  2. 短 URL 服务,怎么设计与实现?
  3. C++ leetcode 26. 删除排序数组中的重复项 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
  4. 计算机术语new一个,微机原理第一章计算机基础知识(new)
  5. PyPy为什么能让Python比C还快?一文了解内在机制
  6. 327. Count of Range Sum 区间和的个数
  7. 高考英语口试计算机系,大学英语口语考试都考什么,高考英语口试考什么?
  8. springboot接收json参数_Springboot + Vue + shiro 实现前后端分离、权限控制
  9. 成为一个优秀的前端工程师,其实你也可以!
  10. java GC垃圾回收
  11. 数据挖掘比赛笔记总结
  12. VirtualBox虚拟机如何选中“启用嵌套 VT-x/AMD-V”
  13. angular中的装饰器 详解
  14. 电子邮件收发原理和JavaMail开发
  15. OkHttp实现远程调用
  16. java eos是什么_EOS是什么?EOS最重要的几个概念你知道吗?
  17. 尚硅谷面试第二季(周阳主讲)
  18. 云游戏的2022:破局、新生、元宇宙
  19. “第五空间”智能安全大赛部分WP
  20. 3.对互斥事件和条件概率的相互理解《zobol的考研概率论教程》

热门文章

  1. Ubuntu下安装gem包curses的步骤
  2. Tkinter(二) | 点击按钮显示图片
  3. linux系统盘ssd,Linux系统下如何使用SSD固态硬盘
  4. 人工智能-----自然语言处理(NLP)基础理解
  5. tarjan算法与无向图的连通性(割点,桥,双连通分量,缩点)
  6. Mininet系列实验(二):Mininet可视化应用
  7. 速记混淆矩阵中的FP、FN、FP、TN
  8. Android安装App出现:“该文件包与具有同一名称的现有文件包存在冲突”的解决方法
  9. prism 计算 Spearman相关
  10. 持久化存储系统本版号