1901100231-自学训练营18群-Python入门学习心得

学员信息

  • 学号:1901100231
  • 学习内容:Python入门

Python自学感悟

  作为一名此前通过看书对C有过些许涉猎的程序菜鸟,我早已听闻Python的大名,但出于各种原因始终没能开始对Python的学习。作为一名准大学生,在这人生中少有的长假里,终于下定了决心,报了Python自学训练营开始了对Python的学习。
  市面上关于Python学习的教材铺天盖地,颇有乱花渐欲迷人眼之感。那么,为什么要通过这种方式来学习呢?尤其是考虑到市面上的选择何其之多。选择这种方式的本意,只是出于对自身积极性的不自信,想借外在的监督督促自己完成对Python的学习。但是在具体的学习过程中,却产生了不少的感悟,收获了意外之喜。


“拼积木”

  • 编程是什么呢?编程语言,既然有语言二字,说白了功能就是用来交流。计算机的算力远超过人脑,而为了利用这强大的算力,我们必须和计算机进行交流,让不明白人类语言的计算机能够听从我们的命令,实现我们的目的。编程语言就是专门用于和计算机交流的语言,而利用这种语言的过程,可以简单看成是在“拼积木”。
  • 在自学营中,每一次的任务都要经由两个步骤完成:阅读参考资料,然后就参考资料的内容进行组合,直到实现任务目标。这一“拼积木”的过程看似稀松平常,毕竟我们日常生活中使用的语言也可以看作是一个个的词语由一定的语法规则拼搭出的“积木”。但是日常语言使用的频繁让我们忽略了这么一个事实:同样一个意思,用不同的语气、语速、语句表达,会有截然不同的效果,不恰当的表达方式有时还会弄巧成拙。很多人其实都知道这个道理,但是真正会在平日里关注这一点的人,除了行业要求或经历使然,又有多少是完全自觉地关注语言表达的效率和艺术呢?而自学过程中信息的极度简约——只有“积木块”,拼搭积木的方式要由学员自己独立思考,这就使得平日里被忽略的事物重新被我们所思考。
  • 在与计算机交流的过程中,我们写下的每一个语句都清晰地摆在面前,随时可供改进与修改。正如写作有助于将人脑中纷乱的思绪得以整理,编程这一对积木进行拼搭的过程不由得使我们开始思考,每一种拼搭方式的优与劣,每种完成积木拼搭的可能性。将任务像拼搭积木一样分割成小块分别解决,以及思考改进拼搭的方法,这是不仅有利于编程,还是能在日常生活中持续发挥作用的宝贵思维工具。

试探边界

  • 正如上文所说,编程可以被看做是一种积木的拼搭,只是缺少图纸,拼搭的效果完全取决于编程者本人。方法总比困难多,虽说很像是摸着石头过河,但迟早可以到达彼岸,只是耗时多少的问题。而在这一过程中,总少不了试探。对于编程来说,一次次的调试,都是为了最终掌握某语句用法必不可少的试探。
  • 相比于学习其他技能,编程的试错成本相当低,以至于自学者可以就参考资料中的例子进行大胆的猜想和尝试,直到最终摸清边界,掌握用法。这不仅适用于编程,学习其他技能也同样需要这样试错的心态。举个亲身经历的例子,我在学习游泳和骑自行车时,一开始总是束手束脚,但当我学会浮水,学会防止摔跤——最大化降低试探的成本之后,我便可以开始肆意的试错,直到最终掌握这两项技能的要领。生活,就是对世界的一次次试探,直到找到与外界和睦共处的那个舒适点啊。

以任务为中心

  • Python语言本身自带的模块中有很多功能,这些功能林林总总,花样繁多。老实说,在具体开始动手尝试之前,看到这数目繁多的用法实在是令人不免有些头痛。此外,相较于程序调试,阅览各种模块各种函数的用法实在是枯燥得多。这个问题其实很好解决,因为编程语言学习的目的是使用,根据要完成的目的去寻找解决问题的方法是有趣得多也高效得多的学习方式。
  • 事实上,作为初学者,很多进阶的用法其实并没有必要掌握。有时候,对某种函数的部分掌
    握就足以解决现有的问题。编程本身就是为了利用电脑的算力解决问题,只要有具体的问题,围绕解决问题展开对编程的学习,即使没有掌握百分百的技能,但也已培养了解决大多数问题的能力。这个世界有太多信息,远超人力所能掌握,有些函数、模块的用法若是从未遇到有特定任务需求,不能掌握也无伤大雅。学会做减法,能让很多事情变得更加轻松。就好像我们身为中国人,但不是所有方块字都要求必须掌握。翻开康熙字典,多的是真实存在但几乎从未被我们所知的汉字。