浅谈递归思想


前言

如果一谈到“递归”你的脑海就浮现出“自己调用自己”,我想说:“你可能并不懂递归”。当然了,这仅仅是个人鄙见。许多时候,递归确实在“自己调用自己”。我们知道这个道理吧,想用递归解决实际问题却又犯难了——怎么就写不出代码来了呢?

我想异于网上千篇一律文章的讲法,小小的别开生面一回,用自己认为容易理解的方式来阐述递归思想。当然啦,如同标题所说,只能浅谈而已。因为,我并不认为自己已经很懂。


yield的一些探索


开头

这篇内容看起来混乱,但其实是在为一个知识点服务:如何实现协程?

在有了明确的目标之后,就可以发现“混乱”都环绕在一个点上:如何手动切换函数的同时,捎上数据。

因能力有限,错漏处望各友不吝赐教。


银杏与初冬配


typecho的官网说念念不忘必有回响。其实你早该知道,敢于念念不忘之人,已经不在乎能不能得到回响。

【1】

每个早晨从宿舍到底楼要被电梯带着滑过15个寻常房间的高度,然后去阿姨家买香菇青菜包。路线是左转,再左转,最后打个右转弯。第二个左转之后会看到银杏树站在马路一旁,要是你着急下结论,你会说:“这里有一颗银杏树站在马路一旁”。等到了右转弯便为自己的武断懊悔不已:原来两颗!


类属性与实例属性


类属性

同一个类的多个实例共用一个类属性。

import random

class MyClass(object):
    # 类属性
    num = random.randrange(10000)

if __name__ == "__main__":
    myObjOne = MyClass()
    myObjTwo = MyClass()

    print(myObjOne.num == myObjTwo.num)

可以看到输出结果恒为True。