FaGe's Blog

吹啊吹啊。

标签:计算机

共 9 篇文章

附录A-练习7:删除路径 (rmdir)

附录A-练习7:删除路径 (rmdir) 这节练习中,你将学习如何删除一个空目录。 做到这些 Linux/OSX $ cd temp $ ls stuff $ cd stuff/things/frank/joe/alex/john/ $ cd .. $ rmdir john $ cd .. $ rmdir alex $ cd .. $ ls joe $ rmdir joe $ cd .. $ ls frank $ rmdir frank $ cd .. $ ls things $ rmdir things $ cd .. $ ls stuff $ rmdir stuff $ pwd ~/temp $ Warning:如果你在Mac OSX上尝试执行rmdir命令,即使你确认这个目录是空的,但是计算机仍拒绝删除该目录,那么实际上应该是有一个名为.DS_Store的文件。这种情况下,你可以输入 rm -rf &...

阅读全文

附录A-练习2:路径, 文件夹, 名录 (pwd)

附录A-练习2:路径, 文件夹, 名录 (pwd) 在这个练习中,你将学会使用pwd命令打印工作目录。 做到这些 我要教会你如何阅读这些我告诉你的“会话”。你不必输入我在这里列出的一切,练习输入其中的一部分就好: 你不需要输入 $ (Unix) 或> (Windows). 这只是我向你展示你在我的会话中能看到什么。 你在$或>之后输入命令,然后敲回车。所以如果我写的是 $ pwd你只需要输入pwd并敲回车。 紧跟着你可以在另一个$ 或 >符号后面看到结果输出。这些内容是输出,你应该看到了相同的输出 让我们使用一个简单的命令,你可以得到这样的窍门: Linux/O...

阅读全文

练习46.项目骨架

练习46.项目骨架 这里你将学会如何建立一个项目“骨架”目录。这个骨架目录具备让项目跑起来的所有基本内容。它里边会包含你的项目文件布局、自动化测试代码,模组,以及安装脚本。当你建立一个新项目的时候,只要把这个目录复制过去,改改目录的名字,再编辑里边的文件就行了。 安装Python 软件包的 你需要使用pip预先安装一些软件包,不过问题就来了。我的本意是让这本书越清晰越干净越好,不过安装软件的方法是在是太多了,如果我要一步一步写下来,那 10 页都写不完,而且告诉你吧,我本来就是个懒人。 所以我不会提供详细的安装步骤了,我只会...

阅读全文

练习26.恭喜你,可以进行一次考试了

练习26.恭喜你,可以进行一次考试了 你已经完成这本书的前半部分了,不过后半部分才更有趣。你将会学习逻辑,并通过条件判断实现有用的功能。 在你继续学习之前,你要完成一道试题。这道试题很难,因为它需要你修正别人写的代码。当你成为程序员以后,你将需要经常面对别的程序员的代码,也许还有他们的傲慢态度,他们会经常说自己的代码是完美的。 这样的程序员是自以为是不在乎别人的蠢货。优秀的程序员也会认为自己的代码总有出错的可能,他们会先假设是自己的代码有问题,然后用排除法清查所有可能是自己有问题的地方,最后才会得出“这是别人的...

阅读全文

练习0.安装和准备

练习0.安装和准备 这道习题并没有代码内容,它的主要目的是让你在计算机上安装好 Python。你应该尽量照着说明进行操作,例如 Mac OSX 默认已经安装了 Python 2,所以就不要在上面安装Python 3 或者别的 Python 版本了。 Warning:如果你不知道怎样使用 Windows 下的 PowerShell,或者 OSX 下的 Terminal,或者 Linux下的“bash”,那你就需要学习了。我有一个免费的快速入门教程放在 http://cli.learncodethehardway.org/ 你可以快速学到PowerShell 和 Terminal 的基本用法。学完后再回来看这本书吧。 Mac OS X 你需要做下列任务来完成这个练习: ...

阅读全文

练习32:双向链表

练习32:双向链表 原文:Exercise 32: Double Linked Lists 译者:飞龙 这本书的目的是教给你计算机实际上如何工作,这也包括多种数据结构和算法函数。计算机自己其实并没有太大用处。为了让它们做一些有用的事情,你需要构建数据,之后在这些结构上组织处理。其它编程语言带有实现所有这些结构的库,或者带有直接的语法来创建它们。C需要你手动实现所有数据结构,这使它成为最“完美”的语言,让你知道它们的工作原理。 我的目标是交给你这些数据结构,以及相关算法的知识,来帮助你完成下面这三件事: 理解Python、Ruby或JavaScript的data = {"...

阅读全文

练习25:变参函数

练习25:变参函数 原文:Exercise 25: Variable Argument Functions 译者:飞龙 在C语言中,你可以通过创建“变参函数”来创建你自己的printf或者scanf版本。这些函数使用stdarg.h头,它们可以让你为你的库创建更加便利的接口。它们对于创建特定类型的“构建”函数、格式化函数和任何用到可变参数的函数都非常实用。 理解“变参函数”对于C语言编程并不必要,我在编程生涯中也只有大约20次用到它。但是,理解变参函数如何工作有助于你对它的调试,并且让你更加了解计算机。 /** WARNING: This code is fresh and potentially isn't correct yet. *...

阅读全文

练习23:认识达夫设备

练习23:认识达夫设备 原文:Exercise 23: Meet Duff's Device 译者:飞龙 这个练习是一个脑筋急转弯,我会向你介绍最著名的C语言黑魔法之一,叫做“达夫设备”,以“发明者”汤姆·达夫的名字命名。这一强大(或邪恶?)的代码中,几乎你学过的任何东西都被包装在一个小的结构中。弄清它的工作机制也是一个好玩的谜题。 注 C的一部分乐趣来源于这种神奇的黑魔法,但这也是使C难以使用的地方。你最好能够了解这些技巧,因为他会带给你关于C语言和你计算机的深入理解。但是,你应该永远都不要使用它们,并总是追求简单易读的代码。 达夫设备由汤...

阅读全文

练习11:While循环和布尔表达式

练习11:While循环和布尔表达式 原文:Exercise 11: While-Loop And Boolean Expressions 译者:飞龙 你已经初步了解C语言如何处理循环,但是你可能不是很清楚布尔表达式i < argc是什么。在学习while循环之前,让我先来对布尔表达式做一些解释。 在C语言中,实际上没有真正的“布尔”类型,而是用一个整数来代替,0代表false,其它值代表true。上一个练习中表达式i < argc实际上值为1或者0,并不像Python是显式的Ture或者False。这是C语言更接近计算机工作方式的另一个例子,因为计算机只把值当成数字。 现在用while循环来实现和上一个练习相同的...

阅读全文