python 教学资源_11个教学和学习Python的资源

python 教学资源

如果您想教,指导或指导初学者,那么您的工作已为您切尽。 不同的学习方式,不同的知识水平以及作为移动目标的学科领域都共同导致您衣衫不整。 幸运的是,这里有很多可用的帮助。 它以开放源代码的教科书,工具甚至游戏的形式出现,所有这些都使教师(和学习者)的学习比以往任何时候都容易。

有一点背景:去年夏天,我获得了信息和计算机科学硕士学位,大约两周后,我开始教我的第一门大学课程(Python编程)。 我是一个自学成才的程序员,主要是在工作中学习。 我从来没有上过Python课程。 更有趣的是,我的学生从从未写过任何代码的真正的初学者到尝试新语言的经验丰富的程序员,不一而足。 从权利上讲,我应该从一开始就注定要失败。

开源课件急救

尽管我的学生经历和兴趣的多样性给他们带来了挑战,但我们还是成功地度过了整个学期,使自己的厌倦感降至最低。 Python领域中提供的大量开源教育材料和工具完全促进了这一点。

就像开源软件一样,开源课件指的是可以免费使用,共享甚至修改的书籍,教程,游戏和测验。 内容创建者可以使用许多开源许可证,包括GNU公共许可证MITBSD许可证,以及Creative Commons许可证的多种变体。 它们在允许的内容上有所不同,但重要的是它们可以在您的教室中免费使用。

我没有强迫学生花150美元买一本枯燥的课本,并通过示例来使班级的一半混乱,而另一半却无聊得无法打字,我才能够完全取消对课本的要求。 该班级使用了几本高质量,最新的免费书籍,而不是一本定价过高的书。 我没有花同样的时间在过去的“实施链表”或“构建图书馆借阅应用程序”中苦苦挣扎,而在我自己的学习过程中却没有受到启发,而是让学生分配诸如“模拟银河系”,“设计入门”之类的任务。进行生物实验”,“制作平台游戏视频游戏”或“构建网络服务”。

开源Python教科书

课堂上对初学者的帮助来自Charles Severance的书《 Python for Informatics》 (知识共享许可)。 这与Coursera的“所有人编程”课程中使用的教科书相同。 我向所有从本书中键入代码示例并在博客中介绍他们所学知识的学生提供了要点。

借助GPL许可的Pygame模块和Al Sweigart的Creative Commons许可的教科书“ 使用Python发明自己的计算机游戏”,更多有经验的程序员希望以不同的方式介绍Python,从而可以直接进入游戏编程。 选择这种方法的学生从教科书中输入了示例代码,并最终学会了修改代码以创建自己的游戏。

开源库和文档

对于真正的初学者来说,遵循一本书的前几章就足以完成一个学期的工作。 但是那些有经验的程序员签了一份简单的A呢? 开源社区也为他们提供了很多乐趣。

作为一种语言,Python的最大优势之一就是提供了各种健壮的,受良好支持的,详尽记录的库和包。 对于不需要了解列表和功能的学生,可用的项目没有止境。

对于理科专业,有几种选择,包括以下BSD许可的软件包:

  • Astropy ,其中包含用于天文学常数坐标系模型拟合等的模块(和示例代码)。
  • 散景 ,可视化库。 该文档内容丰富(且美观)。 任何科学家或科学专业的人都应该能够在她的领域中获取一些有趣的测试数据,并且如果可以做到的话,只需遵循Bokeh的示例,就可以将其转换为精美的图形。
  • Vispy ,这是另一个可视化库,其中包含许多复杂的,令人印象深刻的示例项目。 一位初学者能够找到,运行,阅读,理解并成功修改3D螺旋星系模拟。 你们中有多少人在编码的第一学期做了一些很棒的事情?

当科学家们在一个角落处理数据时,由于这些强大的资源,许多对学习Web技术感兴趣的学生能够建立自己的相关项目:

  • BeautifulSoup是MIT许可的软件包,它使HTML解析与浏览呈现的版本一样令人愉悦。 这些文档一站式介绍了Python,解析和HTML。
  • Flask是BSD许可的网络微框架。 快速,针对性的教程将新手带入主题,例如模板,请求和响应,数据库操作以及测试。 对于中级程序员来说,这一步入门是对Python的完整介绍,比任何初学者教科书都更引人入胜。

游戏和互动教程

班上还受益于Python和一般编程学生可以使用的大量游戏化资源。 以下是一些知识共享许可的选项:

  • 欧拉计划(Project Euler)是一个网站,面临着编码难度不断增加的挑战。 它们大多是简短的,本质上是数学的,非常适合练习新语言。 学生们能够完成一系列此类问题,并在课堂上提出积分解决方案。
  • 像忍者一样切片是我创建的一款网络游戏,为玩家提供字符串和终端。 目的是使用Python slice语法将输入字符串转换为给定的输出字符串。 我没有提出关于切片的章节和测试,而是等到学生遇到可以使用切片解决的问题,介绍该主题,然后让他们玩这个游戏。

Python并非凭空发生的,对编程环境本身的熟悉通常是入门编码人员的最大障碍。 一些学生以既定的命令行和版本控制向导的身份进入我的班级,但大多数学生都需要入职。 这是一些令人惊奇的(麻省理工学院许可的)资源,用于学习命令行和相关工具:

  • Bashy是一款简短的游戏,介绍了基本的命令行用法,同时为那些难以摆脱GUI领域的人提供视觉反馈。 (全部披露:我在研究生院建立了Bashy。不过,我没有从中赚钱!)
  • OpenVim是一个交互式教程,面向功能强大的Vim文本编辑器的初学者。
  • VimGolf是一个命令行工具和网站,可实施竞争性游戏,帮助各个级别的Vim用户提高效率。
  • LearnGitBranching是一个功能丰富,全面的交互式Web应用程序,涵盖了开始和中间的Git命令,并提供了精美的可视化效果和令人鼓舞的反馈。 我拒绝讲授编程而不要求版本控制,所以这是无价的资源。 结束关于Git的讲学要花上几个小时!

特别是版本控制是一个复杂的话题,值得深入研究。 对于需要更多的网络游戏来掌握游戏的学生,Scott Chacon和Ben Straub提供了Creative Commons许可的Pro Git教科书,可以免费在线阅读。

得到教训

开源课堂取得了好坏参半的结果。 对于更高级的学生来说,这是巨大的成功。 他们很高兴有机会探索自己的兴趣,而不是将其与单个教科书中的示例联系在一起,并感到好像他们对Python有了扎实的介绍。 初学者不那么热情,在某些情况下抱怨抱怨不知所措或感到困惑。

也许这是该课程的弱点,但也许感到不知所措和困惑是对进入开源Python宇宙这样一个充满多样性和可能性的世界的自然React。 这压倒性的认为,有近百万Python项目在GitHub上 ,这是一个有点混乱认为一个语言可以功率网站,游戏和飞船。

充分了解开源环境可能只需要花一学期以上的努力,但每个学生都清楚地知道那里有多少巨大的资源,以及它们为我们提供了多少力量。 绑在一本教科书上的日子已经一去不复返了! 开源课件使教师和学习者可以免费设计丰富的,定制的交互式学习体验。 现在让我们编写一些代码!

翻译自: https://opensource.com/education/16/4/teaching-python-and-more-with-oer

python 教学资源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值