热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

边玩游戏边学python_[知行录之Python]边玩游戏边学编程,循序渐进学Python

学习Python除了看有关的Python书籍之外,还有一种方法适合所有年龄层次的人,就是“边玩游戏边学Python”。寓教于乐一直是我们追求的目标&#x

学习Python除了看有关的Python书籍之外,还有一种方法适合所有年龄层次的人,就是“边玩游戏边学Python”。

寓教于乐一直是我们追求的目标,“在游戏中学习”近年来兴起得很快,它让上课变得生动有趣。随着网络和计算机的进步,我们有了更多新鲜工具和互动方法可以应用到学习上。

学习编程也不例外。

比如“儿童编程”的概念,很多编程玩具涌现出来。对于不懂编程的家长来说,无法亲自引导和辅导孩子学习,使得让孩子学习编程一直都只是一个想法,没有付诸行动。这些玩具的出现帮了家长们的忙,让孩子们从小就能通过玩具进行编程的启蒙教育,比如一些编程机器人和APP等等。

还有一些网站,比如code org, code combat等等,通过在线游戏或者“编程一小时”等小项目,让从来没有过编程经验的人,也可以通过简单的方法了解程序设计的概念,把复杂的问题拆分成若干个小问题、步骤去完成。

Code Combat网站,完完全全是通过游戏的方式来学习编程,而且他有中文版,不需要任何编程的经验,小学生就能上手,在一个有趣的奇幻世界里和各种战斗关卡中学会各种编程的基本技巧。

这里可以学习Python,Javascript,Lua,CoffeeScript,Clojure等不同程序语言,这些语言可以运用到游戏设计,网页应用,App的开发上。

打开Code Combat网站,可以选择“教育板块”或者“开始游戏”,先进“游戏”模块看看有什么内容吧。

一幅地图出现在眼前。就好像平时玩的哪些在线游戏一样,好多关卡和任务等待玩家去完成。从最开始的“Kithgard地牢”,你会发现整个过程真的就是要去打怪,寻宝与解谜,只是搭配了Python(或其他语言)的学习内容。

虽然我们不能靠着玩过Code Combat后就能直接成为程序员,但是在整个游戏的过程中,我们还是可以学到基本语法,逻辑结构和变量设定等等内容。

进入游戏后,选择英雄和希望用到的程序语言(比如Python)。英雄选择好像魔兽争霸和LOL啊,只不过游戏的过程中我们要自己用Python写代码,控制英雄去完成任务。

还可以设置编辑器辅助写Python代码。

进入第一关,目标很简单,用Python给英雄发指令,按照方向移动。

你会发现上手非常简单,完全不需要指导,任何玩过游戏的朋友也一定都能立刻开始游戏,并从中学习到各种Python编程的语法基础。

控制英雄移动的函数已经列出来了,要做的就是在右侧选择合适的函数并输入,然后运行。

接下来的游戏章节中,会一步一步从基础语法开始,学习到相对复杂的变量,循序渐进地理解Python的编程逻辑。

每一个小关卡是精心设计的一个Python小技巧。

游戏里的命令操作、武器道具都是用Python写出指令,使用语法控制英雄去攻击NPC,在打怪、寻宝的过程中,慢慢理解每个Python语法的作用。

每个关卡都有详尽的提示,怎么输入Python语言来命令角色行动,输入错误时,会提示为什么这样的语法会出错。

经过简单几关,很快就知道了基本的程序逻辑,怎么设定相互关联的行为,怎么进行特定的行动等等。

后面越来越复杂的命令方式,可以学到Python的语法概念,也可以熟练Python输入,或者领会到怎么设计出更有效的代码。用更精简的指令完成动作,可以获得关卡的更高成就和更高的分数。这一切都和通关游戏很像。

如果看书看不下去了,不妨到游戏中玩会儿Python,也许能有不少启发。

欢迎关注我的网易号:时光知行

谢谢阅读。



推荐阅读
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • 在工作了一年多后,我对现在的工作感到厌倦,没有激情,于是决定转行做程序猿。我在学校开了一个某宝店,通过自己摸索和努力,每个月挣够了零花钱和伙食费。我决定往互联网方向靠,不喜欢面对面和人沟通,而虚拟世界中的开发工作让我感到兴奋。我开始学习Java,感到困惑和怀疑自己的智商,但一篇鸡汤文激发了我学习Python的兴趣,我感到智商找回来了。我相信没有梦想的人和咸鱼没有什么区别。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 初探PLC 的ST 语言转换成C++ 的方法
    自动控制软件绕不开ST(StructureText)语言。它是IEC61131-3标准中唯一的一个高级语言。目前,大多数PLC产品支持ST ... [详细]
  • 媒介本文的前身是源自github上的项目awesome-github-vue,但由于该项目上次更新时候为2017年6月12日,许多内容早已逾期或是许多近期优异组件未被收录,所以小肆 ... [详细]
  • TiDB | TiDB在5A级物流企业核心系统的应用与实践
    TiDB在5A级物流企业核心系统的应用与实践前言一、业务背景科捷物流概况神州金库简介二、现状与挑战神州金库现有技术体系业务挑战应对方案三、TiDB解决方案测试迁移收益问题四、说在最 ... [详细]
  • Server Installation for Jitsi Meet
    2019独角兽企业重金招聘Python工程师标准ServerInstallationforJitsiMeetThisdescribesconfiguringaserverji ... [详细]
author-avatar
殇者残雪_270
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有