关注我们丨文末赠书
自学编程是不少人的选择,在著名的软件开发领域问答网站stackoverflow上,直接搜索learn programming可以得到47000多个回答,教我们如何学习某种编程语言或技术。
▲ stackoverflow中关于学编程的搜索结果
而对纯编程新手,亚马逊评分4.7,中文版热销超25万册的图书《Python编程快速上手 让繁琐工作自动化(第2版)》作者,阿尔•斯维加特给出了两个非常有效的自学建议:学会寻求帮助和聪明地提出编程问题。
▲ 阿尔•斯维加特(来源其GitHub头像)
▲ 广受欢迎的Python入门好书
为什么学Python?
阿尔•斯维加特很诚恳地表示,这本书并不能让一个新手读者立马成为月薪6位数专业软件工程师。他认为编程是一个不断练习的过程,就像只学几节吉他课无法让人成为摇滚明星一样。
这本《Python编程快速上手 让繁琐工作自动化 第2版》是为了帮助读者快速上手学会使用Python,将日常工作中那些需要计算机操作的繁琐工作自动化,比如:
移动并重命名几千个文件,将它们分类,并放入文件夹。
填写在线表单,但不需要打字。
在网站更新时,从网站下载文件或复制文本。
让计算机向客户发出短信通知。
更新或格式化Excel电子表格。
检查电子邮件并发出预先写好的回复。
很明显,这些工作难度不大,但是会花费大量时间。掌握一些Python编程技巧之后,我们就能够编写对应的程序来轻松解决它们。
给Python新手的建议
作为真正的Python新手,可能之前从未接触过编程活动,也不知道如何下载安装Python。不过这些基础得不能再基础的内容,作者都在书中清晰、详细地向读者介绍了。并且在基础准备工作之外,他还向读者给出了两个学习本书的超好建议。
学会寻求帮助
作为新手要明确一个问题:在学习编程过程中遇到的错误信息或代码无法正常工作的情况,我们不会是第一个遇到这个问题的人,早有千千万万个人遇到过并总结了解决方法。
所以,遇到问题第一时间去网上搜索答案,是在我们还不能对其进行思考时首先要做的事情。这不同于传统的向授课老师提问,而是互联网社区下的新型互动方式,正所谓互联网是免费的老师。
举个很直观的例子,下面这个操作有一个错误信息:
作为新人我们既看不懂代码,也看不懂错误信息。不过没关系,直接复制错误信息到搜索引擎中,就能获取到非常多的结果。它们既解释了这条错误信息的含义,又说明了导致其产生的原因,还给出了有效解决方案。
▲ 搜索错误信息的结果
作者在书中一直强调“错误没关系”,我们在使用这本书学习Python的时候不应当害怕错误,它们是学习过程中必要的经历。编程不是脑外科手术,业余人士是完全可以尝试和犯错的。
▲ 上网搜索错误信息是一个有用的方法
遇到不懂的,搜一下大概率就能解决问题,这比我们想象中的要简单。我们常会听人调侃道“你不会百度吗?”就是对这一寻求帮助方式的最好诠释——很多问题的解决方案都是现成的,很容易获取。
有时候实在没有搜到相同的问题怎么办?去专业的问答社区提问!当然,提问也是有讲究,有章法的。
学会聪明地提问
如果问题太笼统、主题不明确、缺乏关键信息,那么也很难得到他人的解答。所以学会聪明地提出编程问题,有助于我们更快地获取他人的帮助,然后解决问题。
阿尔•斯维加特对此就给出了自己多年以来总结的几个原则:
说明你打算做什么,而不只是你做了什么。这会让帮助你的人知道你是否走错了路。
明确指出发生错误的地方。指出它是在程序每次启动时发生,还是在你做了某些动作之后发生。
将完整的错误信息和你的代码复制粘贴到Pastebin或GitHub Gist上。这些网站让你很容易地在网上与他人共享大量的代码,而不会丢失任何文本格式。然后你可以将贴出的代码的URL放在电子邮件或论坛帖子中。
解释你为了解决这个问题已经尝试了哪些方法。这告诉别人你已经做了一些工作来弄清楚状况。
列出你使用的Python版本(Python 2解释器和Python 3解释器之间有一些重要的区别)。而且,要说明你使用的操作系统和版本。
如果错误在你更改了代码之后出现,准确说明你改了什么。
说明是否在每次运行该程序时都会重现该错误;或者它只是在特定的操作执行之后才出现,如果是这样,解释是哪些操作。
遵守良好的在线文明行为。例如,不要全用大写提问,或者对试图帮助你的人提出无理的要求。
可以很明显地看出来,这些原则重点在于清晰明确地描述问题,从而让他人能够明白我们的诉求,并且从我们提供的信息中发现症结所在,并给出解决方案。如果一个问题我们自己都看不懂,别人更无法判断我们是在问啥,也就给不出有效建议和解答了。礼貌也很重要,大部分开发者不会拒绝一个礼貌的提问。
作者在书中郑重地说道:
本书假定你编程的知识为零,并且会教给你很多知识,但你的问题可能超出本书的范围。记住如何有效地提问,如何寻找答案,这对于你的编程之旅是无价的。
这两个建议,能够帮助读者更深入地认识和理解Python,也能更有效地吸收书中的知识纳为己用。
爱Python,爱开源
《Python编程快速上手 让繁琐工作自动化 第2版》这本书之所以受欢迎,就是因为它是真正把读者当作新人,并且以清晰、简单的教学方式帮读者快速地掌握了Python的正确使用方法。之所以能够写出这本书,在于作者对Python的爱,在于作者多年以来对于新手的清晰认识和了解。
阿尔•斯维加特对Python非常热爱,制作了许多受欢迎的开源模块,在GitHub上获得了上万个星标。
▲ 阿尔•斯维加特的GitHub主页信息
为了推广他喜爱的Python,帮助更多的人学会Python并从中受益,他写了许多文章、教程、图书,同时还制作了大量的视频教程。在这个过程中,他认识了形形色色的新手,获得了大量反馈,从而不断地改善自己的教程,形成一套有效的教学方式。
▲ 阿尔•斯维加特个人网站的图书作品
同时,他认为很多人关于“学习编程需要很多的数学知识”这个顾虑是不应存在的。因为大多数编程需要的数学知识不外乎基本的算术运算,如果不深入算法方面,基础编程是将一个大问题分解为单个的、详细的步骤,其中需要的数学知识不多。和大多数技能一样,熟能生巧,编写的程序越多,编程技能掌握得就越好。
对于“大龄”新手,他认为也不需要有“我年纪太大不能学编程”的想法,因为有不少人甚至在“晚年”还能学到新技能,所谓的活到老学到老。因为编程是需要通过实践来培养的技能,也就是说现在开始学永远不会晚。
而且,编程作为一个创造性的活动,它有着无限可能,任何人都能用它来创造独一无二的作品。并且,这件作品可以很容易在线分享给整个世界。
丰富资源助力Python学习
940分钟视频教程,边看边学
既然是新人,有配套的视频一步一步手把手地教我们如何操作,是太好不过了!本书就配备了总共940分钟量身定制的教学视频,只要扫描书中章节对应的二维码或者直接在异步图书界面进入,就能观看讲解视频!
在线编程环境,边练边学
作为以实践为驱动的编程技能,一边学习一边直接敲代码是非常直接有效的方式。本书就提供了在线编程环境,从e读版就能直接进入专属的个人编程练习环境!
一边看书本内容,一边进行实际操作,跟着作者键入同样的内容,就能获得一样的结果。更直观地体验编程这一过程,从实践中加深对概念方法的理解。
免费得e读版电子书
而且e读版电子书是买纸质书免费送!购买纸质书后输入图书唯一码,就能够领取e读版电子书啦。
另外,还能加入社区学习,与其他读者共同讨论进步,老师在线答疑也能助你快速上手Python!
书中全部源码同样可以在图书页面下载获取,通过对比源码与自己的代码,能够更快、更深地理解对应章节内容,掌握对应的方法技巧。
编程是为了解决问题
的确,我们学习某个技能就是为了解决相应的问题,Python则是解决我们工作中那些繁琐任务的一个很好方式。而新人在学习Python过程中会遇到各式各样的问题,如何有效地寻求帮助很重要。
《Python编程快速上手 让繁琐工作自动化 第2版》中给出的答案就非常有效,并且适用于编程的所有阶段,在任何时候使用这些方法去获取答案都是很好的。
—END—
关注公众号回复【Python】即可参与,送4本!