|
|
发表于 2017-9-20 09:19:46
|
显示全部楼层
本帖最后由 流浪1123 于 2017-9-20 09:29 编辑
给你补充几个代码的!
- def power(x, y):
- if y:
- return x * power(x, y-1)
- else:
- return 1
-
- print(power(4, 3))
- print("这个是代码1")
- print("=====================================")
- def power1(x, y):
- if y != 0:
- return x * power1(x, y-1)
- else:
- return 1
-
- print(power1(4, 3))
- print("这个是代码2")
- print("=====================================")
- x = 4
- y = 3
- q = 1
- while y > 0:
- if y != 0:
- q *= x
- y = y - 1
- else:
- y = 1
- print(q)
- print("这个是代码3")
- print("=====================================")
- def pingfang(a,b):
- i = 1
- result =1
- while i<b+1:
- result *= a
- i += 1
- return result
- print(pingfang(4,3))
- print("这个是代码4")
复制代码
这几种方法全部都是等价的,我给你提供几个代码的!
代码1与代码2比较得知:
代码2片段:
代码1片段:
if y 等价于 if y == 0
递归的条件就是当循环停止的条件:
代码3片段:
代码4片段:
- i = 1
- result =1
- while i<b+1:
复制代码
从代码3和代码4得知是while y>0 时y<=0时不执行。所以递归条件是y==0(就是零界点的嘛!)
建议你比较一下的代码的! |
|