前言
这本书指导你在Python中通过练习和记忆等技巧慢慢建设和建立技能,然后应用它们解决越来越困难的问题。在这本书的最后,你需要拥有必要的工具开始进行更多复杂程序的学习。我喜欢告诉大家,我的书带给你们“编程黑带”。意思是说你知道的基础知识足够现在就开始学习编程。
这本简单书的目的是让你起步编程。虽然书名说是“笨办法”,但其实并非如此.所谓的“笨办法”是指本书教授的方式。这本书的教学方式就是按照我告诉你的方式去做一系列的练习,目的是通过重复练习掌握一种技能。这对于一些什么都不知道的初学者,在理解更复杂的科目之前获取基本能力是很有效的方法。这种方法适用于一切领域,从武术到音乐甚至基本的数学和阅读技巧。这本书指导你在Python中通过练习和记忆等技巧慢慢建设和建立技能,然后应用它们解决越来越困难的问题。在这本书的最后,你需要拥有必要的工具开始进行更多复杂程序的学习。我喜欢告诉大家,我的书带给你们“编程黑带”。意思是说你知道的基础知识足够现在就开始学习编程。如果你认真学习,利用好你的时间,并学会这些技能,你就可以学习编程。
笨办法更简单在这本书的帮助下,你将通过非常简单的练习学会一门编程语言。做练习是每个程序员的必经之路:1.做每一道习题2.一字不差地写出每一个程序3.让程序运行起来就是这样,刚开始可能会非常难,但你要坚持下去。如果你通读了这本书,并且每晚花一两个小时做习题,你可以为自己读下一本关于Python的编程书籍打下良好的基础。这本书不会在一夜之间把你变成一个程序员,但是它会帮你掌握学习编程的最基本的方法。这本书的目的是教会你作为编程新手所需的三种最重要的技能:读和写、注重细节、发现不同。读和写如果你连打字都成问题的话,那你学习编程也会成问题。尤其如果你连程序源代码中的那些奇怪字符都打不出来的话,就根本别提编程了。没有这种基本技能的话,你将连最基本的软件工作原理都难以学会。输入代码样例并让他们运行起来能帮你记住各种符号的名字并对它们熟悉起来,这个过程也会让你对编程语言更加熟悉。注重细节区分好坏程序员的最重要的一个技能就是对于细节的注重程度。事实上这是任何行业区分好坏的标准。你必须关注你工作中任何一个微小的细节,否则你的工作成果将缺乏重要的元素。以编程来讲,这样你得到的结果只能是毛病多多难以使用的软件。通过将本书中的一例一字不差的打出来,你将通过时间训练自己,让自己集中精力到你作品的细节上面
给“小聪明”们的警告有的学过编程的人读到这本书,可能会有一种被侮辱的感觉。其实本书中没有任何要居高临下地贬低任何人的意思。只不过是我比我面向的读者群知道的更多而已。如果你觉得自己比我聪明,然后觉得我在居高临下,那我也没办法,因为你根本就不属于我的目的读者群。如果你觉得这本书里到处都在侮辱你的智商,那我对你有三个建议:1.别读这本书了。我不是写给你的,我是写给需要学习的人的。2.放下架子好好学。如果你认为你什么都知道,那你就很难从比你强的人身上学到什么了。3.学Lisp去。我听说什么都知道的人可喜爱Lisp了。对于其他在这里学习的人,你们读的时候就想着我在微笑就可以了,虽然我的眼睛里还带着恶作剧的闪光。简介10
练习0.安装和准备这道习题并没有代码内容,它的主要目的是让你在计算机上安装好Python。你应该尽量照着说明进行操作,例如MacOSX默认已经安装了Python2,所以就不要在上面安装Python3或者别的Python版本了。Warning:如果你不知道怎样使用Windows下的PowerShell,或者OSX下的Terminal,或者Linux下的“bash”,那你就需要学习了。我有一个免费的快速入门教程放在http://cli.learncodethehardway.org/你可以快速学到PowerShell和Terminal的基本用法。学完后再回来看这本书吧。
MacOSX你需要做下列任务来完成这个练习:
1.用浏览器打开http://www.barebones.com/products/textwrangler/下载并安装TextWrangler文本编辑器。
2.把TextWrangler(也就是你的编辑器)放到Dock中,以方便日后使用。
3.找到你的终端程序。搜索一下,你就会找到它。
4.同样将你的终端放到Dock中
5.运行你的终端程序.这个程序看上去不怎么地。
6.在Terminal程序里边运行python。运行的方法是输入程序的名字再敲一下回车
7.键入quit(),回车,就能退出python
.8.这样你就应该退回到敲python前的提示界面了。如果没有的话自己研究一下为什么
.9.学着使用Terminal创建一个目录.
10.学着使用Terminal进入一个目录.
11.使用你的编辑器在你进入的目录下建立一个文件。你将建立一个文件。使用“Save”或者“SaveAs...”选项,然后选择这个目录
.12.使用键盘切换回到Terminal窗口,如果不知道怎样使用键盘切换
.13.回到Terminal,使用ls命令看到你新建的文件.OSX:你应该看到的结果以下是我在自己电脑的Terminal中执行上述练习时看到的内容。和你做的结果会有一些不同,但是应该相差不多。练习0.安装和准备
Q:如何在我的编辑器里显示不同颜色?先把你的文件保存为.py结尾的文件,比如ex1.py,之后你再编辑的时候,就会有颜色区别了。Q:我执行脚本的时候,遇到一个SyntaxError:invalidsyntax报错你可能想运行Python,可是你多打了一次Python,重启你的终端程序,并用正确的方法输入命令pythonex1.py.Q:我遇到报错can'topenfile'ex1.py':[Errno2]Nosuchfileordirectory你应该进入你文件保存的目录下。确保你执行了cd命令已进入文件目录。比如,你的文件保存在目录lpthw/ex1.py下,那你应当在执行pythonex1.py之前先执行cdlpthw/。如果不明白我说的什么意思,请先通读附录A。Q:在我的文件中,如何显示我自己国家的文字?在你文件的第一行输入#-*-coding:utf-8-*-。Q:我的文件没有运行;我的文件运行后没有输出请逐字逐句的检查你的代码文件,你应该输入print"HelloWorld!"而不只是"Hel
Q:如果#是注释的话,那么#-*-coding:utf-8-*-是怎么运行的?Python仍然会忽略这句代码,但是它却可以作为“黑客”或者解决问题的方法来制定文件的格式。你还可以在编辑器的设置中找到其他类似的注释。Q:为什么print"Hi#there."这句中的#没有被忽略这句代码中的#是包含在字符串中的,字符串直到遇到下一个"为止,字符串里的#只是当做一个字母而不是注释处理。Q:我怎样注释掉多行呢?在要注释的每一行前面加上#Q:我不知道如何使用我们本国的键盘输入#一些国家使用Alt键和其他键的组合来打印他们的语言文字。你得在网上搜索下你们国家的键盘如何输入#。Q:为什么要我从后向前阅读代码这其实是一种欺骗你大脑的做法,这样做能让你的大脑没有附加意义的理解每一部分代码,同时能让你正确的处理你的每一块代码。这是一个方便的捕获错误,检测错误的技术。练习2.注释和井号“#”21
对于坚持练习的一点建议在你通过这本书学习编程时,我正在学习弹吉他。我每天至少练习2个小时,至少花一个小时练习音阶、和声、和琶音,剩下的时间用来学习音乐理论和歌曲演奏以及训练听力等。有时我一天会花8个小时来练习吉他,因为我觉得这是一件有趣的事情。对我来说,要学好一样东西,重复的练习是必不可少的。就算这天个人状态很差,或者说学习的课题实在太难,你也不必介意,只要坚持尝试,总有一天困难会变得容易,枯燥也会变得有趣了。在我写笨办法学Python和笨办法学Ruby之间的那段时间,我发现了绘画这个有意思的事情。我在39岁的时候爱上了视觉艺术,并且花费每天的时间来学习它,就像我学习吉他,音乐和编程一样。我收集教学材料的用书,按照书上讲的做,每天练习绘画,并且专注于享受学习的过程。我不是一个“艺术家”,但是现在我可以说我会绘画。我在这本书中教给你我用到学习艺术上的相同方法。如果你把问题分解成小的练习课,并且每天完成他们,你就可以做任何事情了。如果你把精力集中在慢慢改进,享受学习的过程,那么你一定会受益,不管你之前有多么擅长它.在你通过这本书学习编程的过程中要记住一点,就是“万事开头难”,对于有价值的事情尤其如此。也许你是一个害怕失败的人,一碰到困难就想放弃。也许你是一个缺乏自律的人,一碰到“无聊”的事情就不想上手。也许因为有人夸你“有天分”而让你自视甚高,不愿意做这些看上去很笨拙的事情,怕有负你”神童”的称号。也许你太过激进,把自己跟有20多年经验的编程老手相比,让自己失去了信心。不管是什么原因,你一定要坚持下去。如果你碰到做不出来的加分习题,或者碰到一节看不懂的习题,你可以暂时跳过去,过一阵子回来再看。只要坚持下去,你总会弄懂的。一开始你可能什么都看不懂。这会让你感觉很不舒服,就像学习人类的自然语言一样。你会发现很难记住一些单词和特殊符号的用法,而且会经常感到很迷茫,直到有一天,忽然一下子你会觉得豁然开朗,以前不明白的东西忽然就明白了。如果你坚持练习下去,坚持探索他们,你最终会学会这些东西的。也许你不会成为一个编程大师,但你至少会明白程序是怎么工作的。如果你放弃的话,你会失去达到这个程度的机会。你会在第一次碰到不明白的东西时(几乎是所有的东西)放弃。如果你坚持尝试,坚持写习题,坚持尝试弄懂习题坚持阅读习题的话,你最终一定会明白里边的内容的。如果你通读了这本书,却还是不知道编程是怎么回事。那也没关系,至少你尝试过了。你可以说你已经尽过力但成效不佳,但至少你尝试过了。这也是一件值得你骄傲的事情。
明:本文限于篇幅,故而只展示部分的面试内容,完整的Python面试学习文档小编已经帮你整理好了,有需要的朋友点赞+关注私信我555免费领取Python大厂面试学习资料哦!