Python 如何更改我的递归模式?
缩放功能将形状的大小更改为Python 如何更改我的递归模式?,python,recursion,Python,Recursion,缩放功能将形状的大小更改为1/n。但是,只有第一个形状需要缩放到1/n。其余的n-1模式是2/n、3/n….n/n。我的递归将所有大小更改为1/n、1/(n-1)、1/(n-2)… 是否有方法将递归更改为2/n,3/n….n/n?您可以尝试: def pet(n,shape): if n==1: return shape else: return stack_frac(1/n,scale(1/n,shape),pet(n-1,shape)) de
1/n
。但是,只有第一个形状需要缩放到1/n
。其余的n-1
模式是2/n、3/n….n/n
。我的递归将所有大小更改为1/n、1/(n-1)、1/(n-2)…
是否有方法将递归更改为2/n,3/n….n/n
?您可以尝试:
def pet(n,shape):
if n==1:
return shape
else:
return stack_frac(1/n,scale(1/n,shape),pet(n-1,shape))
def pet(n, shape, k=1):
if k == n:
return shape
else:
return stack_frac(k/n, scale(k/n, shape), pet(n, shape, k+1))