练习 37. 复习各种符号

    在这节课中,看到一个关键字,回忆并写下它的作用,然后上网搜它真正的用处。这里可能对你来说有些困难,因为有些内容真的很难收到,但是不管怎么样,还是要试一试。

    如果你发现你的记忆有误,就在索引卡片上写下正确的定义,试着将自己的记忆纠正过来。

    最后,在一个小的 Python 程序里使用每一个符号和关键字,或者你也可以尽量多写一些程序来练习。我们的目标是要明白各个符号的作用,确认自己没搞错,如果搞错了就纠正过来,然后将其用在程序里,通过这样的方式来巩固自己的记忆。

    ai酱注:

    注1:输入匿名短函数:s = lambda y: y y,执行该函数 s(3),输出结果为 27, 为平方运算。lambda 简化了函数定义的书写形式,使代码更为简洁。

    注2:with X as Y,X 是一个要被执行的表达式,Y 是变量,它存储的是表达式执行返回的结果。一般用于文件的读写和存储。

    数据类型

    对于字符串转义序列,你需要在字符串中应用它们,确保自己清楚地知道它们的功能。

    老式字符串格式化

    一样的,在字符串中使用它们,确认它们的功能。

    ai酱注:

    注1:%c 是把 34 转换为 ASCII 码,其对应的 ASCII 码为 "

    注2:%r 打印时能够重现它所代表的对象。

    Python 2 的代码使用这些格式化字符来实现 Python 3 中 的功能,你也可以试试这些替代方法。

    ai酱注:x += 2 相当于 x = x + 2,其他同类运算同理。

    花一个星期来学习这些东西,如果你能提前完成的话更好。我们的目的是覆盖到所有的符号类型,确认你已经牢牢记住它们。另外很重要的一点是这样可以帮助你发现还没掌握的内容,以便日后学习巩固。

    阅读代码

    现在去找一些 Python 代码阅读一下。你需要尽可能地阅读你能找到的任何代码,然后从中学习一些东西。目前为止你学到的东西已经足够让你看懂一些代码了,但你可能还无法理解这些代码的功能。这节课我要教给你的是:如何运用你学到的东西去理解别人的代码。

    首先把你想要理解的代码打印到纸上。没错,你需要打印出来,因为和屏幕相比,你的眼睛和大脑更习惯于纸质内容。一次最多打印几页就可以了。

    然后通读你打印出来的代码并做好标记,标记的内容包括以下几个方面:

    • 函数以及函数的功能。
    • 每个变量的初始赋值。
    • 每个在程序中多次出现的变量。它们以后可能会给你带来麻烦。
    • 任何可能没有结束的 while 循环。
    • 代码中任何你看不懂的部分。第三步,你需要用注释向自己解释代码的含义。解释各个函数的使用方法,各个变量的用途,以及任何其它方面的内容,只要能帮助你理解代码即可。

    最后,对于代码中比较难的部分,逐行或者逐个函数地去跟踪变量值。你可以再打印一份出来,在空白处写出你要“追踪”的每个变量的值。

    • 研究一下什么是“流程图”(flow chart),并试着画一画。
    • 如果你在读代码的时候发现了错误,试着把它们改对,然后把修改内容发给作者。
    • 如果不使用纸质打印,你可以使用注解符号 # 在程序中加入笔记。这些笔记会对后来的读代码的人有很大的帮助。

    常见问题

    我如何在网上搜索这些东西? 只要在任何你要搜的内容前面加上 “python3.6” 就行了。比如你要搜 yield,就输入 。