Kav*_*_kh 2 python recursion persistent
我正在尝试编写一个递归函数,需要在递归时存储和修改对象(比如一个集合).我应该在函数内部使用全局名称吗?另一种选择是修改或继承函数参数的类,以便它可以保留这个持久对象,但我发现它并不优雅.如果我完全放弃递归,我也可以使用堆栈...
有这样做的pythonic方式吗?发电机可以做到这一点吗?
只需通过递归方法传递持久对象.
def recursivemethod(obj_to_act_on, persistent_obj=None):
if persistent_obj == None:
persistent_obj = set()
# Act on your object
return recursivemethod(newobj, persistent_obj)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5855 次 |
| 最近记录: |