陈斌

近年来,Python逐渐成为最热门的计算机编程语言之一,如何开展Python语言的编程教学也成为了计算机基础教育领域的热门话题。面向中小学生的编程教学尤其需要激发并培养学生的学习兴趣。因此,在针对中小学生的编程学习中,趣味性活动必不可少。本文以“FancyPy Light”Python艺术编程节为例,介绍我们在以趣味活动促进Python语言教学方面的一些探索与体会。

Python艺术编程节概况

艺术与编程分属不同的学科门类,看似相差甚远,实际上二者均包含着人类的智慧和对于美的追求。将二者结合,既能让学生通过编程类趣味活动走近艺术,更能使他们试着从艺术角度体会编程魅力。与此同时,将课程中所学习的编程知识运用到实际生活中,不仅能够帮助学生更好地理解编程知识,还能激发他们的求知欲和学习兴趣。

艺术的下属学科非常多,作为尝试,本次Python艺术编程节选择了光影艺术这一兼具趣味性与可操作性的门类作为活动主题。活动采用比赛形式,一方面能够增加竞技感,增强活动的趣味性,另一方面能够提高学生的参与感和体验感,加强活动的学习效果。比赛分为小学组与初中组,分开进行。学生们自主组队,以团队形式参赛。比赛要求各小组以光影为主题,自主设计参赛作品,并在规定时间内用Python语言完成作品程序的编写与调试,最终将写好的程序导出到micro:bit硬件中,并用乐高积木搭建外形,完成作品。最后,评审专家将现场评价各小组的比赛作品,综合评出各个奖项。活动组织方统一提供比赛相关Python编程硬件,包括自主研发的“dxkStickPython语言教学套件”,套件中有micro:bit单片机、扩展板、插卡式传感器和能够编程控制发光的组件,以及用于搭建外形的乐高积木等。

比赛如火如荼,创意层出不穷

2018年12月8日,以“FancyPyLight”为主题的Python艺术编程节活动如期在北京大学附属中学举行。来自北京大学附属中学、北达资源中学、清华附中国际学校等学校的学生纷纷踊跃报名,最终共有42组130余名学生参与到本次艺术编程节活动当中。

活动开始前,北京大学“地小空开放实验室”的同学们就早早来到活动地点——北大附中图书馆阅览室,开始了活动前的准备工作。助教们将活动现场的硬件全部调试完毕,小零食也都整整齐齐地摆放在餐桌前,静静地等待参赛学生的到来。

比赛过程中,每个小组的学生部积极创作、分工合作。他们有的负责创意设计,有的负责搭建乐高积木,还有的负责编写代码……每位学生都对自己的工作任务全力以赴,小组内相互配合共同完成创意作品。尽管每个人负责的内容不尽相同,但学生们在整个比赛过程中展现出了极强的想象力、创造力、艺术鉴赏能力和团队协作精神。

到下午比赛规定时间结束后,基本上每个小组都完成了各自的创意作品。他们创作出的作品类型广泛、构思巧妙。有的小组制作出了类似贪吃蛇与俄罗斯方块的小游戏,将普通的显示改进为光影闪烁,让体验者能够在休闲娱乐的同时品味灯光艺术带来的魅力。有的小组极具想象力,使用活动提供的LED灯带、灯环等硬件将小组成员装饰为极具未来感的机器人,完成了参赛同学与编程和艺术的有机结合。

有的小组将灯光与音乐相结合,制作出了“灯光音响”。整个作品由dxkStick Python语言教学套件、LED灯环及乐高积木组合而成,为一个音响的造型。随着选定音乐节奏的变化,音响上的LED灯将随之变幻,极具创意与艺术性。有的小组将灯光与透明乐高积木组合,制作了“冰雕”,表达了对2022年北京冬奥会的期盼。还有的小组结合实际生活,设计出了“骑行警示灯”。该作品以现实生活中的红绿灯为参考,通过程序控制LED灯的闪烁与变幻,既远用了Python编程的知识,又具有一定的现实意义。小学组的学生们也完成了他们的创意作品,如“未来家园”和“矿车”,通过灯光编程表达了对未来家园和自动化生产的畅想。学生们的创意作品不仅体现出了他们的Python编程应用水平,更反映了他们对Python语言编程的兴趣与热爱。

本次活动邀请的专家包括中国科协青少年科技中心科普活动负责人、北京市及各区信息技术教研员、上海市信息技术教研员、北京部分学校信息技术教师及部分企业代表。专家们走到每一个学生团队的桌前,认真聆听学生们介绍他们的作品创意,并向学生们提出问题或建议,进行更深入的交流。最终专家们评选出了5组最佳创意奖、5组最佳编程奖和7组最佳人气奖。参赛学生都获得了探索奖以表彰他们在这一天的活动中所展现出的探索精神。

以趣味活动促进编程教学的未来发展之路

本次“FancyPy Light”Python艺术编程节是我们对编程学习趣味活动的一次成功尝试,它肯定了趣味活动对于编程教育的重要意义。首先,通过本次活动,我们更近距离地了解了学生的编程应用能力与兴趣。学生们将自己的编程知識与创造力、想象力相结合,通过编写代码表达出了自己对艺术的理解,这说明学生们完全有能力学好Python编程语言。学生作品极具创造力与创新性,虽然部分代码并不成熟,但却是非常好的尝试,为我们开展编程教育提供了支持。其次,通过本次活动,我们积累了相关教学经验,探索和检验了艺术编程节这种趣味活动模式。今后我们可以开展更多编程教学趣味活动,不断对教学方式进行迭代,使之更有助于推动针对学生的编程教学。最后,本次活动作为探索尝试,参与学生数量规模有限。今后我们将动员更多学校和学生参与进来,了解Python艺术编程节。

“FancyPy Light”Python艺术编程节的成功为未来更多类似趣味活动的举办奠定了基础。除了光影主题外,还可以选择音乐、绘画、雕塑等艺术主题,甚至还可以尝试将编程与数学、物理、化学等学科相结合,设计出更多样、更丰富的趣味编程活动。有了这一次活动的顺利举办,我们相信今后类似活动能够吸引更多的参与者,能够越办越好。我们始终谨记活动的最终目的是通过富有创意的趣味活动促进编程教学,推动Python编程教学和中小学计算机基础教育发展。

python编写student类_Python艺术编程节——以趣味活动促进学生学习编程相关推荐

  1. python编写ATM类_Python中编写类的各种技巧和方法

    有关 Python 内编写类的各种技巧和方法(构建和初始化.重载操作符.类描述.属性访问控制.自定义序列.反射机制.可调用对象.上下文管理.构建描述符对象.Pickling).你可以把它当作一个教程, ...

  2. Python编写汽车类

    Python编写汽车类 编写程序并测试,有一个汽车类 Vehicle,类中的私有数据成员为车轮个数 wheels 和车重 weight:小车类 Car 是汽车类 vehicle 派生类,其中包含载客人 ...

  3. 【六一特别文章】Python编写一个六一儿童节问答小游戏及趣味比赛

    随着六一儿童节的到来,我们可以为孩子们编写一个有趣的小游戏,让他们在游戏中学习有关六一儿童节的知识.本文将介绍如何用Python编写一个六一儿童节问答小游戏及趣味比赛. 首先,我们需要准备一些有关六一 ...

  4. 不会编程也文盲?盘点7种免费学习编程的方法开启浏览器javascr

    我们曾在一篇文章中讨论过不会编程算不算是文盲的问题,虽然有人认为这样有点说过头,但同时也不可否不会编程也文盲?盘点7种免费学习编程的方法开启浏览器javascr认如今编程确实显得越来越重要.比如作为设 ...

  5. python如何定义类_python中定义类

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 类的定义python中,定义类是通过class关键字,例如我们定义一个存储学生信 ...

  6. python中定制类_python定制类__str__(实例详解)

    在接下来的文章中,让我们明白什么是python中的自定义类.学习什么是python的自定义类,python定制类可以扮演何种角色在python编程.当你看到像__xxx__ __slots__变量或函 ...

  7. python如何定义类_Python 面向对象

    Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过 ...

  8. python手机开发的软件_Python新手入门教程_在手机上就能学习编程的软件

    Python新手入门教程_在手机上就能学习编程的软件 很多小伙伴会问:我在学编程,想利用坐地铁坐公交吃饭间隙学编程,在手机上能学编程的软件有哪些?毕竟时间宝贵啊!!哈哈哈!!! 这个问题,在悟空回答的 ...

  9. python编写数学公式大全_python - 用python编写数学公式 - 堆栈内存溢出

    我正在用python编写此公式. 请查看图片我正在使用以下代码. 它总是会出错. import math import matplotlib matplotlib.use('TkAgg') from ...

最新文章

  1. CYPRESS USB芯片win10驱动
  2. ROS探索总结(十三)(十四)(十五)——导航与定位框架 move_base(路径规划) amcl(导航与定位)
  3. ML之Cosin:基于输入图片RGB均值化转为单向vector利用Cosin(余弦相似度)算法进行判别
  4. NumericUpDown使用备注
  5. owncloud8 php,owncloud-8.2.3
  6. Python学习之快速入门
  7. Ubuntu下Arm-Linux-GCC交叉编译环境的搭建
  8. 来,看我是如何把面试官问倒的!
  9. 【软件定义汽车】SOA框架介绍
  10. AcWing 2019. 拖拉机
  11. 3DMAX场景渲染失败怎么办?
  12. java解二次方程函数_Charting for Java Swing中的FunctionSeries
  13. hdu1870 愚人节的礼物
  14. 五分钟玩转Andriod开发环境配置
  15. 【学习 · 求职必备】学CV必须关注的会议与期刊
  16. uni-app 微信小程序分享功能河北银丹互联网科技有限公司
  17. Android 之 打开相机 打开相册
  18. hiredis(一个轻量级redis的c客户端)
  19. Cytoscape_v3.6.1 载入插件cluego
  20. 一种解决h5页面背景音乐不能自动播放的方案

热门文章

  1. c语言记账系统源程序,C语言实现Linux服务端的记账本程序
  2. html5 手机相册裁剪,H5的手机图片裁剪特效
  3. 杭州c语言开发招聘,杭州招银网络科技
  4. 一世12年龄在泥土还在打,硅谷00创业毕竟开始播放!
  5. python绘制横向柱状图 妈妈再也不用担心我不会画图了
  6. Picasso框架源码解析(一)。
  7. linux下做桌面应用程序,PinePhone成功演示运行Linux桌面应用程序
  8. python写一个爬虫、爬取网站漫画信息_python爬取漫画
  9. Deep K-SVD Denoising
  10. 数据库-MySQL-基础(2)-DDL操作