基于计算思维的非计算机专业Python课程体系设计

2021-11-28 02:53孙新杰李惠龙尚银孙国营
电脑知识与技术 2021年28期
关键词:非计算机专业计算思维课程设计

孙新杰 李惠 龙尚银 孙国营

摘要:计算思维的培养对于现代大学生至关重要,Python作为非计算机专业的学生踏入计算机编程行业的一个敲门砖显得非常适合,该文分别从数学和美术两个非计算机专业为入口,介绍了Python教学的课程设计及教学方法,通过实践验证该方式得到了良好的效果,为非计算机专业的计算思维教学改革提供参考。

关键词:计算思维;Python;非计算机专业;课程设计

中图分类号:G642       文献标识码:A

文章编号:1009-3044(2021)28-0234-03

开放科学(资源服务)标识码(OSID):

1 引言

随着人工智能行业及大数据分析的热度不断攀升,Python语言作为一种功能强大的计算机语言也迎来了它的春天。高校也在不断地修订自己的人才培养模式,无论哪种专业的学生适当地进行计算思维的培养都有利于该专业学生更好地适应未来的发展[1]。

Python语言本身的天然优势,使它能够快速融入其他行业,不仅是计算机专业人员能够快速的学会Python,非计算机专业的学生对Python也是能够很快上手,并且快速地在本专业进行应用。六盘水师范学院非计算机专业大学计算机基础实验课程中加入部分Python语言的教学,取得了学生的高度认可,不仅使学生学习计算机基础的实用性大大得到提升,更使得学生能够通过Python的学习掌握本专业与计算机融合的一个切入点。本文就数学和美术两个非计算机专业来探讨将Python融入课程的教学设计。

2 Python教学课程设计与教学方法

2.1 Python教學基础课程设计

Python语言本身包罗万象,针对不同行业有它特殊的函数库支撑,可以这样说,Python是一门万金油,可以在任何行业发光发热[2]。作为一门通用性很高的语言,要想完全掌握Python的全部技能是万万做不到的,也是不可能同时也是没必要实现的,针对不同行业除了掌握基础的Python技巧之外,就是研究和本专业相关的一些函数的使用,即可快速上手达到专业融合。但是无论哪些行业使用Python来和自己的专业进行融合,一些Python基础技巧是必须掌握的,下面就Python一些基础核心内容进行介绍。

Python使用的基础性要求有:掌握Python软件的安装与环境的配置,本文推荐使用Anaconda软件进行一些常用环境的配置,简单高效;基本数据结构、列表、容器、集合、控制语句以及循环的简单应用。

2.2 Python课程教学的教学方法

无论是针对计算机专业学生还是非计算机专业的学生,学习计算机语言都应该是以应用为首要目的,着重培养学生使用计算机语言解决实际问题的能力[3]。

随着国家实力的不断提升,大学的硬件基础也得到了很大的改善,针对六盘水师范学院的学生来说无论是计算机专业学生还是非计算机专业学生都能够保证学习计算机类课程的时候一生一机,这样能够很大的改观一些传统的计算机语言教学模式即“教”“练”分开,现在完全可以做到“教”“练”一体,老师边讲解,学生边练习,达到及时的所见即所得的效果。同时建议在进行Python教学的同时放弃传统的PPT授课模式,使用Anaconda中的jupyter notebook进行授课,该软件可以达到很好的“教”“练”融合,如图1所示。

另外常用的计算机语言采用的教学方法多为讲授法,并且大部分都在讲解计算机语言中的语法。对于课时量不是很充足的大学计算机基础实验中引入部分和专业相关的Python内容进行教学,该方法显得不切合实际,需要从教学方法上面进行一些改进。通过对两个专业的实践来看,改进的案例教学法是最适合非计算机专业学生学习计算机语言的最好方法。

改进之后的案例教学不能只讲案例,由于大部分非计算机专业学生对于计算机语言都是零基础,需要在选择好的案例上面引入基础的计算机语法并结合该专业的应用场景加以讲解。比如在对数学专业进行授课的时候,根据数学专业的对于函数的理解比较深入,这里通过讲解和决策相关的一些算法,分别从参数、基础数据结构、循环以及输出等方面进行了案例的介绍,并且通过逐步实现该案例穿插讲解了各种针对数学与计算机结合需要掌握的一些基础语法;再比如在对美术专业进行授课的过程中,由于艺术类学生对于计算机语言更加不敏感,他们对计算机辅助美术也没有很深入的认识,更多的时候是使用计算机进行PS的设计功能,如何能够让这些艺术类的学生产生一些兴趣,本文结合实践经验发现让美术专业的学生使用Python里面的画图案列,可以很快地和他们的专业相结合,并能够最大程度地激发他们的学习兴趣。

除了课堂上面的案例教学以外,还需要针对课堂教学进行对应的课后练习案例升级教学。针对数学专业的课后练习可以是经典算法的计算机编程实现,如累加和算法,排序算法,阶乘算法等。对于美术专业的课后练习可以使用计算机编程实现正方体、玫瑰花等常见图形的画法。

2.3 Python辅助数学专业的教学课程设计

数学专业的学生有着其他专业没有的数学思维能力,算法能力等,但是随着社会的发展,特别是互联网行业在国内取得了举足轻重的地位,传统数学一些模式也受到了冲击,大部分学生可以针对某个问题进行算法的设计,但是不能够通过数据验证该算法的合理性与正确性,特别是大数据行业的兴起,更是对算法提出了需要落地使用的要求。通过在大学计算机基础实验课程中加入部分和算法相关的Python知识,同学们都能够快速地掌握语言的特点并能够把算法进行计算机语言化,Python融入数学专业的课程设计如图2所示,主要涉及Python基础、Python数学函数库的讲解、Python基本数据结构的讲解便于存储数据,Python算法思维的讲解便于学生从宏观的算法到计算机语言实现的鸿沟跨越。

通过设计合适的针对数学专业的个性化教学内容,能够使得学生快速掌握Python的技巧,以及使用Python解决自己专业的问题。通过对数学专业学生的不同案例训练,最终所有学生都能够很好地完成如公式1到公式5这种复杂的算法思想的计算机程序化,使得同学们无论在以后的专业学习过程中,还是可能从事的科研工作,都能起到积极的作用。

1.设[a=[al,au]],[b=[bl,bu]],称

[d(a,b)=ε1a1-bl1+al-bl+ε2au-bu1+au-bu]        (1)

2.权重公式编写

[ρa,b=α-alal+bllog2alal+bl+-blal+bllog2blal+bl]

[+β -a?la?l+b?llog2a?la?l+b?l+-b?la?l+b?llog2b?la?l+b?l]

[+γ-a?ua?u+b?ulog2a?ua?u+b?u+-b?ua?u+b?ulog2b?ua?u+b?u]

[+δ -auau+bulog2auau+bu+-buau+bulog2buau+bu]

[Hj=β-1log2mi=1ma?liji=1ma?lijlog2a?liji=1ma?lij][+γ-1log2mi=1ma?uiji=1ma?uijlog2a?uiji=1ma?uij]

[+1-β-γ -1log2mi=1msiji=1msijlog2siji=1msij],[j=1,2,…,n]               (2)

其中:

[ρd+ij=α -rlijrlij+rl+ijlog2rlijrlij+rl+ij+-rl+ijrlij+rl+ijlog2rl+ijrlij+rl+ij]

[+β -r?lijr?lij+r?l+ijlog2r?lijr?lij+r?l+ij+-r?l+ijr?lij+r?l+ijlog2r?l+ijr?lij+r?l+ij]

[+γ -r?uijr?uij+r?u+ijlog2r?uijr?uij+r?u+ij+-r?u+ijr?uij+r?u+ijlog2r?u+ijr?uij+r?u+ij]

[+δ -ruijruij+ru+ijlog2ruijruij+ru+ij+-ru+ijruij+ru+ijlog2ru+ijruij+ru+ij]            (3)

负理想方案的距离熵

[ρ-i=j=1nωjρd-ij]                                    (4)

其中:

[ρd-ij=α -rlijrlij+rl-ijlog2rlijrlij+rl-ij+-rl-ijrlij+rl-ijlog2rl-ijrlij+rl-ij]

[+β -r?lijr?lij+r?l-ijlog2r?lijr?lij+r?l-ij+-r?l-ijr?lij+r?l-ijlog2r?l-ijr?lij+r?l-ij]

[+γ -r?uijr?uij+r?-ijlog2r?uijr?uij+r?u-ij+-r?u+ijr?uij+r?u-ijlog2r?u+ijr?uij+r?u-ij]

[+δ -ruijruij+ru-ijlog2ruijruij+ru-ij+-ru-ijruij+ru-ijlog2ru-ijruij+ru-ij]      (5)

2.4 Python辅助美术专业的课程设计

美术专业的学生对于理科思维模式特别是计算思维本身就具有很大的排斥,如何让美术专业的学生感受到学习Python对于自己的专业及以后可能从事的专业有帮助显得更加困难。对于该专业的学生来说,通过实践发现选择更具有针对性的Python画图对于他们的兴趣提升起到很大的作用。通过讲授画图发现,美术专业的学生对画图方式创造能力远远高于从事计算机专业的老师,学生只要掌握了基础的Python语言绘图方法,再加上自身美术专业的功底,学生很快就能够画出各式各样的栩栩如生的图片或动画,并且同一张图实现的方式多姿多彩,这样大大提升了学生的能力,为以后即将从事的行业与计算机的交汇打下一个基础。Python融入美术专业的课堂内容设计如图3所示,主要涉及Python基础、Python turtle海龟画图库的相关函数使用方法讲解、Python中关于颜色的设置与调整方式讲解。

通过设计合适的针对美术专业的个性化教学内容,能够使得学生快速掌握Python的技巧,以及使用Python解决自己专业的问题。通过对美术专业学生的不同案例训练,最终所有学生都能够很好地完成图形的设计,而且实现的Python代码都很简单,如代码2.1所示,简短几句代码就实现了太阳花的绘制。

复杂一点的樱花的绘制如图4,同学们也能够通过几次练习之后轻松掌握。

3 Python课堂教学评价设计

Python课程评价是Python课程教学的重要环节,应该以培养学生计算思维模式下的应用为主要目标,对于课堂效果的评价应该主要基于这一点开展。评价方法应该采用多种方式,如同行评价、教师自我评价、学生评价。评价的内容可以从Python基础掌握情况,兴趣度,专业相关度,Python专业函数库学习掌握情况等展开。总之针对不同专业设置具有针对性的评价方式及内容,最终达到以计算思维的培养为导向,以案例教学为基础,通过非计算机专业计算机基础实验课程的编程为基本原理,通过课后案例习题强化专业与计算机的结合,着力提高学生的计算机辅助专业的目的。

4 结语

对于数学专业的学生来说,除了掌握C语言以外,在大学计算机基础实验这门课中适当地掌握Python语言,可以更高效地把数学思维用计算机语言展示,更好地为以后专业学习打下坚实的基础。对于美术专业的学生来说,通过使用一些精挑的海龟画图案例使他们快速的上手,并能够实现用计算机的“纸笔”进行绘图,对自己的绘图及以后专业发展都起到积极的作用。

通过实践发现,针对不同专业的学生,根据各自的专业特点,选择不同的Python知识及方法,这样既能够最大的发挥Python语言的优势,也利于学生更好的学习自己的专业课,并能够起到计算机对自己专业的辅助作用,继而提升各专业学生解决实际问题的能力。

参考文献:

[1] 蒋卫祥.探析高校计算机教育改革思路[J].教育现代化,2019,6(47):37-38.

[2] 刘绍翰,杨群.“新工科”背景下Python语言教学案例设计——以“Python语言程序设计与问题求解”课程为例[J].工业和信息化教育,2018(9):47-49.

[3] 嵩天,黄天羽.Python语言程序设计教学案例新思维[J].计算机教育,2017(12):11-14,19.

【通联编辑:梁书】

猜你喜欢
非计算机专业计算思维课程设计
龙凤元素系列课程设计
非计算机专业计算机基础教学的总结与思考
高校非计算机专业计算机网络基础教学改革探究
程序设计课程中计算思维和应用能力培养问题研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
非计算机专业VF课程教学内容与方法探究
基于Articulate Storyline的微课程设计与开发
基于自动化系统的PLC课程设计
开放大学课程设计与资源开发