Python

笨办法学 Python(练习题)

2016-10-12  本文已影响657人  fatfatEddy

笨办法学 Python (Learn Python The Hard Way)中文版

习题 0: 准备工作

总有一天你会听到有程序员建议你使用 Mac OSX 或者 Linux。如果他喜欢字体美观,他会告诉你让你弄台 Mac OSX 计算机,如果他们喜欢操作控制而且留了一部大胡子,他会让你安装 Linux。这里再次向你说明,只要是一台手上能用的电脑就可以了。你需要的只有三样东西: gedit、一个命令行终端、还有python。


习题 1: 第一个程序

学会看调试错误

这些内容你应该学会看懂的,这是很重要的一点,因为你以后还会犯类似的错误。就是我现在也会犯这样的错误。让我们一行一行来看。

python


习题 2: 注释和井号

程序里的注释是很重要的。它们可以用自然语言告诉你某段代码的功能是什么。
在你想要临时移除一段代码时,你还可以用注解的方式将这段代码临时禁用.


习题 3: 数字和数学计算

每一种编程语言都包含处理数字和进行数学计算的方法。不必担心,程序员经常撒谎说他们是多么牛的数学天才,其实他们根本不是。

如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网络游戏,从人们身上偷赚点小钱而已。


习题 4: 变量(variable)和命名

在编程中,变量只不过是用来指代某个东西的名字。
程序员通过使用变量名可以让他们的程序读起来更像英语。
而且因为程序员的记性都不怎么地.
变量名可以让他们更容易记住程序的内容。如果他们没有在写程序时使用好的变量名,在下一次读到原来写的代码时他们会大为头疼的


习题 5: 更多的变量和打印


习题 6: 字符串(string)和文本

字符串可以包含格式化字符 %s,这个你之前也见过的。你只要将格式化的变量放到字符串中,再紧跟着一个百分号 % (percent),再紧跟着变量名即可。

唯一要注意的地方,是如果你想要在字符串中通过格式化字符放入多个变量的时候,你需要将变量放到 ( ) 圆括号(parenthesis)中,而且变量之间用 ,逗号(comma)隔开。就像你逛商店说“我要买牛奶、面包、鸡蛋、八宝粥”一样,只不过程序员说的是”(milk, eggs, bread, soup)”。


习题 7: 更多打印


习题 8: 打印,打印

习题 9: 打印,打印,打印


习题 10: 那是什么

tabby_cat = "\tI'm tabbed in."      #\t制表符
persian_cat = "I'm split\non a line."    #\n换行符
backslash_cat = "I'm \\ a \\ cat."     #2个\\显示1个\

fat_cat = """
I'll do a list:
\t* Cat food
\t* Fishies
\t* Catnip\n\t* Grass
"""

print tabby_cat
print persian_cat
print backslash_cat
print fat_cat

输出:

    I'm tabbed in.
I'm split
on a line.
I'm \ a \ cat.

I'll do a list:
* Cat food
* Fishies
* Catnip
* Grass

习题 11: 提问

一般软件做的事情主要就是下面几条:

注意到我在每行 print 后面加了个逗号(comma) , 了吧?这样的话 print 就不会输出新行符而结束这一行跑到下一行去了。


习题 12: 提示别人


习题 13: 参数、解包、变量

from sys import argv

script, first, second, third  = argv
print ("The script is called:") , script
print ("Your first variable is:") , first
print ("Your second variable is:") , second
print ("Your third variable is:") , third
奇怪的结果

在pycharm里面运行命令行:
Run/Debug Configurations->Configurations->Script Parames

输出:

The script is called:       
F:/2���/python/nesterjerrychan/chapter6/learnhardway/test.py
Your first variable is: first
Your second variable is: second
Your third variable is: third

习题 14: 提示和传递


习题 15: 读取文件

我使用了“命令”这个词,不过实际上它们的名字是“函数(function)”和“方法(method)。上网搜索一下这两者的意义和区别。看不明白也没关系,迷失在别的程序员的知识海洋里是很正常的一件事情。


习题 16: 读写文件


习题 17: 更多文件操作

文本1--->复制文本--->文本2
为什么每次需要output.close()?

1.把文件想象成信件就可以了,打开信封才能取出信纸,把信纸放入信封还要封好,不然随时可能掉出来.

2.如果没有close(),写入的内容可能会存在缓冲区中,并没有真正的写入文件里。

3.close()是为了释放资源。
如果不close(),那就要等到垃圾回收时,自动释放资源。垃圾回收的时机是不确定的,也无法控制的。
如果程序是一个命令,很快就执行完了,那么可能影响不大(注意:并不是说就保证没问题)。
但如果程序是一个服务,或是需要很长时间才能执行完,或者很大并发执行,就可能导致资源被耗尽,也有可能导致死锁。


习题 18: 命名、变量、代码、函数

函数可以做三样事情:

创建函数过程:


习题 19: 函数和变量

函数里边的变量和脚本里边的变量之间是没有连接的


习题 20: 函数和文件


习题 21: 函数可以返回东西


习题 22: 到现在你学到了哪些东西?

做这节练习没有失败,只有尝试,请牢记这一点。


习题 23: 读代码


习题 24: 更多练习


老程序员的建议

在这么久的旅程下来我的体会是:编程语言这东西并不重要,重要的是你用这些语言做的事情。事实上我一直知道这一点,不过以前我会周期性地被各种编程语言分神而忘记了这一点。现在我是永远不会忘记这一点了,你也不应该忘记这一点。

你学到和用到的编程语言并不重要。不要被围绕某一种语言的宗教把你扯进去,这只会让你忘掉了语言的真正目的,也就是作为你的工具来实现有趣的事情。

编程作为一项智力活动,是唯一一种能让你创建交互式艺术的艺术形式。你可以创建项目让别人使用,而且你可以间接地和使用者沟通。没有其他的艺术形式能做到如此程度的交互性。电影领着观众走向一个方向,绘画是不会动的。而代码却是双向互动的。

技术公司里边会编程的人多到一毛钱一打,根本得不到什么尊敬。而在生物学、医药学、政府部门、社会学、物理学、数学等行业领域从事编程的人就能得到足够的尊敬,而且你可以使用这项技能在这些领域做出令人惊异的成就。

You can code. They cannot. That is pretty damn cool.

Advice from an Old Programmer

上一篇下一篇

猜你喜欢

热点阅读