如何用ICode来学习Python

一些有趣的事实:

  • 至少一半的编程学习者在有学习编程想法的第二天放弃
  • 剩下的一半多会在安装学习环境的时候放弃
  • 剩下的一半多会在运行"Hello World!"后放弃
  • 剩下的一半多会在学完一次课程后放弃

最终,只有不到5%的学生能够坚持到第3天,而95%的学生会进入到下一个循环,直到机缘巧合下进入到下一个淘汰赛阶段。换句话说,你至少需要有20次尝试学编程的冲动,才有有一次幸运的真正开始编程的学习。

如果,有一个环境,可以在你有学习想法的时候第一时间满足你的要求,无疑,这将大大减少你需要的冲动次数。

ICODE就是这样一个编程学习平台。https://home.icode.org.cn/?

 

全称是“国际青少年编程竞赛”,别担心,这是一个“假”竞赛,他实际上是一个学Python的平台,而且是完全免费的。

怎么学编程

提到学编程,学python,你可能第一印象是这样的:一个黑乎乎或者白兮兮的窗口,上面写满了奇怪的符号。

但是如果我告诉你,可以这样学习Python、学习编程,你是不是会感到很惊讶?

如何开始

点击https://home.icode.org.cn/?v=zhihu开始注册,注册时学校填“知乎”就可以了,所有填“知乎”的学员都会在同一个战队里出现,可以帮助大家相互监督。在右下角,选择Python关卡后,开始挑战,就开始了我们的Python学习之旅。

ICODE的Hello World代码

看完背景故事后,我们知道了我们的任务。开始执行第一行代码。看来Dev就是这个可爱的小机器人了,step好理解,就是走路的意思。Dev离目标有4个格子的距离,所以要走4步,默认代码都已经帮我们写好了,只要点击右下角的RUN按钮就可以成功执行了。

Hello World 和核按钮

“Hello World!”第一次被代码输出的时候是在48年前,它大概是想不到48年后的今天,仍活跃在编程一线,被无数编程学员一遍又一遍的输出来。

对大部分新学员来说,输出Hello World和按下核按钮并没有什么区别,都是无法直观理解的。

我们需要知道的是:我们可以通过代码控制电脑,这个过程不管是输出一个“Hello World!”还是控制核武器,或者是控制这么一个虚拟的角色,都是编程的过程。

编程和数学

编程和数学一样,是一个工具,脱离不了实际的应用。在第5关,我们遇到了这样一个问题,Dev的前后左右都有能量,我们应该怎么移动才能保证步数最少呢?

我们稍微模拟一下就可以发现,从上一个能量到下一个能量都要经过出发点,所以,每条路径都要走两次,除非是最后一个能量,只需要走一次。那么我们只需要把最长的路径留到最后就可以了,这是其中一种解法。

循环

经过前面6关的铺垫,我们已经知道怎么运行代码,怎么控制Dev了,马上就进入到了真正的编程概念,也是编程最核心的第一个概念:循环。

看到任务的第一瞬间,我们几乎就可以得到“重复”这样的概念:

  • 【右转->前进】 -> 【右转->前进】-> 【右转->前进】

换成人话,就是:

  • 重复3次右转前进

正如人类的自然语言,在不同编程语言里,重复3次写法也有所差异。在Python中,我们使用下面的语句来重复执行代码。

for i in range(3):
    Dev.turnRight()
    Dev.step(4)

对人类来说,视觉是学习中最重要的部分。在一般的编程学习中,循环的第一个例子往往是重复输出一堆文字,或者是一堆数字,枯燥的数字和文字并不能带来直观的“循环”概念。在这里,用一张图就清晰的表达出了“循环”这个重要的概念。

对象和类

面向对象编程可以说是编程中最重要的概念了,非常难以学习。直到我看到了这一关,一个新的“对象”。

同样的step方法,我在第一时间就明白了它如何运作,或许它并没有完整的解释对象是什么,却让我知道原来可以如何方便的使用对象的方法。

关于类、对象的学习

定义一个类对几乎所有初学者来说都是一件奇怪的事情,大部分初学者认为定义一个类是把代码变复杂了,而不是所谓的“简化”了。

相反的是,在类和对象的使用上,几乎所有人都认可这一抽象的概念非常的有用,所以ICODE在这里,使用了类、对象、属性的概念而不涉及到如何去定义它,我觉得是对初学者非常友好的做法。

数组

数组是什么?数的组合?Array从来都只表示数字的组合。它还可以是这样的:

一排的飞板,也可以是一个数组。从这一关我们就可以学到这些知识:

  • 数组的序号是从0开始的
  • 数组的元素往往具有相同的属性

数组是不是可以和循环结合起来

没错!数组天然和循环结合的非常完美,在后续的关卡中我们可以看到非常完美的结合。

更多的编程知识

在这里,我不想大篇幅的去一关关介绍,抽象的文字介绍远远比不上视觉化的效果,在ICODE平台中,提供了非常多的学习资料,而且更重要的是,不仅仅是编程知识。

写在最后

我不认为ICODE能帮助你学习所有的编程知识,但是这是你开始学习编程的第一步。在网页上浏览再多的《如何学习编程?》问题并不能帮你掌握编程,开始动手永远是学习编程的第一步,从ICODE开始,把冲动变为现实。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星卯教育tony

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值