“Python程序设计语言”课程的思政设计与探索
2022-03-22李红岩宋懿花周作建
李红岩 宋懿花 周作建
[摘 要]为贯彻教育部有关高等学校课程思政建设的指导思想,实现“立德树人”这一根本任务,本文尝试探索在理工科专业课程“Python程序设计语言”中融入思政元素,并设计和阐述了三种思政教育方式:思政导入、思政案例和点滴融入。通过三种思政教育方式的设计以及其在课程教学之初、案例教学实施和教学全过程各个阶段的实施,有效地激发了学生的学习兴趣,有助于引导学生形成正确的价值观。
[关键词]Python程序设计;课程思政;思政导入;思政案例;点滴融入
[中图分类号] G641 [文献标志码] A [文章编号] 1008-2549(2022) 02-0082-03
2020年教育部印发《高等学校课程思政建设指导纲要》,[1]强调在高等教育中落实“立德树人”的根本任务。[2]为促进学生智育与德育的协同培养,我校积极采取了课程思政的一系列举措,并逐步落实到各门课程的教学设计和课堂实施中,探索并实现“全员育人、全程育人、全方位育人”[3-4]的思政体系和教育格局,力争为国家培养全面发展的社会主义建设人才。本文作者结合学校组织的课程思政教学比赛项目,针对“Python程序设计语言”这门课程的教学与实施进行了课程思政的设计与探索。
一、课程现状与思政意义
在高等教育中,尤其是理工科学科教育中以往大多强调的是知识传授,侧重考查知识和技能的培养目标是否达成,而对学生的思政教育和三观养成的引领作用则主要依赖于思政教师和辅导员。[6]然而,思政课程通常每周仅有1-2次,难以有效发挥思政教育的引领作用。而知识传授和思想教育相割裂的方式往往导致“三全育人”难以真正贯彻落实。[3-5]在专业课程的学习中,学生掌握了专业领域知识,却很难得到充分的德育意识的培养和能力的提升。鉴于此,在教育部的课程思政纲要[1]指导下,在学校的积极推动下,本文针对“Python程序设计语言”的教学进行課程思政设计,尝试探索思政教育在专业课程中的点滴融入与贯彻执行。
“Python程序设计语言”课程是南京中医药大学面向人工智能专业学生开设的一门专业基础课。课程介绍了Python语言的基本语法以及与当前主流语言的异同,同时重点介绍了Python 特有的字符串、列表和元组、映射和集合类型、函数和代码复用、文件和数据格式化、第三方库安装和使用、科学计算和可视化以及网络爬虫和自动化以及初步的人工智能应用开发。课程授课过程采用了嵩天等人编著的《Python语言程序设计基础(第2版)》[7]作为主要参考教材,并依据教学内容进行教学大纲中的学时分配与设计,再依据教学学时设计,在课程教授与实施中,强调“知行合一”,设定了教学中对于Python基本语法和编程规范掌握的知识目标、灵活运用Python语言解决实际应用问题的能力目标,并在此基础上设计了课程的情感&思政目标:
·激发学生的学习动力
·树立学生的民族使命感与科技担当
·培养学生的职业素养,问题探究意识与创新能力
·促进学生国际观、大局观的养成
课程的教学设计与课堂实施的总目标即为在达成知识传授,达到知识目标,促成能力目标的同时,能够通过思政教育逐步培养和实现情感思政目标。
二、课程思政的设计与探索
为在课程教学中更好地融入思政教育,我们设计并探索了三种方式:授课之初的思政导入、教学案例的思政设计和教学过程中思政教育的点滴融入。下面我们将分别就三种方式的设计思路进行详细阐述。
(一)思政导入
为了让学生初步了解课程所涉及的内容、要求和需要达成的目标,通常在授课之初我们会对授课课程进行课程学习内容的讲解、课程要求的强调以及课程考核方式的介绍。为了更好地融入思政教育,在此我们设计并加入了“思政导入”,期待在此环节中可以激发和鼓励学生的学习兴趣,树立学生的民族使命感和科技担当。
设计思政导入背景为2020年爆发的新冠肺炎疫情,以及在此次疫情中所体现出来的伟大抗疫精神。通过对疫情伊始武汉告急、湖北告急时“悬壶入荆楚,白衣做战袍”精神的学习;对中国共产党带领全国各族人民众志成城交出的让世界瞩目的“抗疫答卷”的回顾;[11]以及对助力抗疫的如健康码、行程码、红外测温、口罩识别、身份验证等等高科技产品的列举。通过思政导入的种种回顾,同学们可以更加深刻地体会和感动于伟大抗疫精神。[9-10]在心情激动澎湃之余也不禁扪心自问,在疫情防控常态化的今天,在后疫情时代,作为人工智能专业的学生我们还可以做什么?又该从何做起?由此引出“Python程序设计语言”课程,并请同学们带着浓厚的学习兴趣,怀揣着“拳拳爱国心、殷殷报国志”来开启本门课程的学习。
(二)思政案例
针对选用教材中的相关代码[9]我们思考并赋予了其相关思政含义,以下部分本文将对授课过程中设计的四个典型思政案例进行介绍。
思政案例一:“锲而不舍,金石可镂” 。
在讲解基本数据类型时,我们采用以下代码让学生达成知识目标,与此同时赋予代码思政含义,基于对代码的理解完成课程育人过程,达成思政教学目标。
1. import math
2. dayup = math.pow((1.0 + 0.01), 365)
3. daydown = math.pow((1.0 - 0.01), 365)
4. print("向上: %.2f, 向下: %.2f."%(dayup, daydown))
如上述代码中,在教给学生基本数据类型用法和输出格式设置的同时,告诉学生该代码表示当每天都认真学习时能力值可提高1%,而放任贪玩时能力值则降低1%,请同学们补充代码完成,第一天的能力值记为1,假如每天都认真学习提高能力,输出一年后能力值的变化。通过实验,学生会发现,每天都认真学习,一年后能力竟然可以提高37倍。继续变更要求,假如每周休息两天不学习,编程实现后发现一年后能力提高则仅有4.36倍了。在不断修改完成任务要求的过程中,学生的知识技能得到提高。而从实验结果的分析上来看,学生深刻体会到孟子《劝学》中“骐骥一跃,不能十步;驽马十驾,功在不舍”的含义,也鼓励同学们一定要积极响应毛主席的号召:“好好学习,天天向上!”通过此思政案例的设计与教学不仅激发了学生的学习热情,而且让学生从代码运行的角度直观、形象地体会到耐心、坚持的重要性,也对“锲而不舍,金石可镂”有了更深刻的认识。
思政案例二:“保护自然,从我做起”。
在讲解程序分支结构时,我们给出以下代码:
1. PM = eval(input("请输入PM2.5数值: "))
2. if 0<= PM < 35:
3. print("空气质量优,适合户外运动!")
4. if 35 <= PM <75:
5. print("空气良好,适度户外活动!")
6. if 75 <= PM:
7. print("空气污染,请小心!")
在讲解代码中if语句编写规范,使用方法的同时,请同学们关注PM2.5数值的大小与空气质量以及人类户外活动的关系,并进一步引发学生思考当今社会存在的污染主要有哪些,造成的恶劣后果又有多么严重。由此,也让同学们进一步理解习总书记提出的“绿水青山就是金山银山”,更是倡导同学们一起响应习总书记的倡议“促进生态文明,共建地球生命共同体”。通过此思政案例的设计让学生在学会如何使用if语句进行条件判断实现分支结构的同时,也让学生进一步认识到环境保护、人人有责,为了让我们的明天“水更清,天更蓝,树更绿”,从内心真正认识并贯彻执行“保护自然,从我做起”。
思政案例三:“珍爱生命,续航人生”。
在讲解组合数据类型时,借助中文分词第三方库jieba实现《三国演义》中人名词频统计,学生既学习了组合数据类型的定义与用法,又掌握了第三方库的安装与使用,基本代码如下:
1. import jieba
2. excludes = {……}
3. txt = open("三国演义.txt", "r", encoding='utf-8').read()
4. words = jieba.lcut(txt)
5. counts = {}
6. for word in words:
7. if len(word) == 1: #排除單个字符的分词结果
8. continue
9. else:
10. counts[word] = counts.get(word,0) + 1
11. for word in excludes:
12. del(counts[word])
13. items = list(counts.items())
14. items.sort(key=lambda x:x[1], reverse=True)
15. for i in range(15):
16. word, count = items[i]
17. print ("{0:<10}{1:>5}".format(word, count))
掌握基本Python语法和编程规范之后,我们通过运行代码,可以看到代码输出中出现了诸葛亮和司马懿的名字。针对司马懿与诸葛亮的比较,自古至今,从帝王到百姓始终津津乐道、争论不休。除却经常为世人所进行比较的战略眼光、军事和治国才能的对比,在此我们提醒同学们关注另一个方面,那就是司马懿更健康长寿。正因如此,司马懿成功阻止了诸葛亮的第五次北伐,更是将其耗死在了五丈原。而司马懿之所以健康长寿,得益于良好的生活习惯的养成,合理工作强度的控制和其隐忍不燥的性格。有关司马懿的养生之道,建议学生可以看一下《大将军司马懿之军师联盟》这部电视剧,相信必定有所启发。[8]由此,也提醒学生身体才是革命的本钱,希望同学们能够通过该案例的学习改掉日常生活中熬夜等不良习惯,真正做到“珍爱生命,续航人生”。
思政案例四:“未雨绸缪,防患未然”。
在讲解python中异常处理机制时,我们通过具体代码让学生理解关键词try,except,else和finally的使用场景,书写规范以及其功效作用,代码如下:
1. try:
2. alp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
3. idx = eval(input("请输入一个整数: "))
4. print(alp[idx])
5. except NameError:
6. print("输入错误,请输入一个整数!")
7. else:
8. print("没有发生异常")
9. finally:
10. print("程序执行完毕,不知道是否发生了异常")
再对代码进行讲解分析,从而让学生能够熟练掌握异常处理机制的灵活运用外,更是基于异常处理的特点启发学生在做人做事时应该思虑周全,严谨细致,要学会“未雨绸缪,防患未然”。
(三)思政点滴融入
除了具体的思政案例的讲解之外,教学设计上我们也坚持在整个教学过程中进行思政教育的点滴融入。例如,通过对理论教学与实践教学学时的合理分配,通过理论指导进行实践操作,通过实践体会辅助理解理论知识,强调学习做事的“知行合一”。通过对代码编写的可读性、规范性的严格要求,督促学生养成精益求精的工匠精神和职业素养。通过对第三方库及开源软件的学习,理解“自由、创新、团结、互助”的开源理念。通过对日常课堂纪律以及作业提交规范的严格要求,促进学生守时守信守约的规范养成。课程基础知识学习结束后,结合在研的智能医疗类科研课题精心设计综合性练习,在鼓励和培养学生开拓创新的意识和能力,强调中医传承创新的重要性,弘扬传统文化自信。
为真正在高校中贯彻“三全育人”的教育格局与教育理念,[4]培养社会和国家的可造之才,课程思政的设计与实施任重而道远。本文结合“Python程序设计语言”课程的教学,尝试在专业课程中融入课程思政。通过以上三种方式的思政设计,我们发现在专业课程中加入思政教育来实施,不仅开拓了学生的眼界,更是激发了学生的学习兴趣,促進了学生正确价值观的形成。然而,目前我们所作所行只是对课程思政的初步尝试、设计和探索。今后,我们将进一步加深对课程思政的认识和理解,探索更加有效的课程思政设计路径,学会挖掘科学知识体系中所蕴含的人文精神、哲学理念,积极融入家国情怀、民族自信的思想,推动理工科专业学科教育中课程思政的进一步发展。
参考文献:
[1]http://www.moe.gov.cn/srcsite/A08/s7056/202006/t20200603_462437.html.
[2]马满好,刘进.运筹学类课程教学中的课程思政研究[J].高教学刊,2020,157(35):182-185.
[3]曹红卫,黄子方, 李有刚.论新时期的大学生廉洁教育[J].今日中国论坛, 2013(19):230-231.
[4]魏美.“课程思政”视角下高校“三全育人”的机理及路径[J].文教资料,2021(8):85-86+57.
[5]邓如涛,彭超,唐明川,等.“三全育人”视域下高校发展型资助育人体系构建分析[J].科教导刊,2021(14):1-3.
[6]文莉.论高职学院思政教师亲和力的培育途径[J].边疆经济与文化, 2017(11).
[7]嵩天,黄天羽,礼欣.Python语言程序设计基础:第2版[M].高等教育出版社, 2017.
[8]陈其华.热播剧中的健康知识——司马懿长寿秘诀[J].安全与健康,2018,449(5):57-57.
[9]https://baijiahao.baidu.com/s?id=1680602371501279517&wfr=spider&for=pc.
[10]徐晶,王若溪.抗疫精神融入高校思政教育研究[J].现代商贸工业,2021,42(20):115-116.
[11]蒋劼.抗疫精神融入大学生思想政治教育的实践研究[J].南京理工大学学报:社会科学版,2021,34(3):82-86.
(责任编辑: 杜家和)
2415500511372