4
使用收益递归
有什么方法可以混合使用递归和yield语句吗?例如,无限数生成器(使用递归)将类似于: def infinity(start): yield start # recursion here ... >>> it = infinity(1) >>> next(it) 1 >>> next(it) 2 我试过了: def infinity(start): yield start infinity(start + 1) 和 def infinity(start): yield start yield infinity(start + 1) 但是他们都没有做我想要的事情,第一个在屈服后停止start,第二个在屈服之后start,然后是发电机,然后停了下来。 注意:请知道,您可以使用while循环来做到这一点: def infinity(start): while True: yield start start += 1 我只想知道这是否可以递归进行。