Dus*_*usk 0 python function python-2.7
这个简单的循环工作得很好:
>>> def loop (i):
i+=i
if 0<i<20:
print i
loop(i)
>>> loop (1)
2
4
8
16
Run Code Online (Sandbox Code Playgroud)
但这不起作用,它意外退出循环:
>>> from functools import partial
>>> def loop (i):
i+=i
if 0<i<20:
print i
partial(loop,i)
>>> loop(1)
2
>>>
Run Code Online (Sandbox Code Playgroud)
有什么问题?有没有办法让它以某种方式工作?
这只是一个简单的功能......我真正的问题是:
问:如何编写一个能够循环自身的函数,每次只使用多个参数?我应该看看其他地方(除了部分)吗?
partial创建一个可调用的,所以..
def loop (i):
i+=i
if 0<i<20:
print i
partial(loop,i)()
Run Code Online (Sandbox Code Playgroud)