Python 递归函数
Python recursion function
我正在尝试取一个数字,对其进行底除法,直到它变为 0。这必须使用递归和基本情况来完成。
例如:
>>>Base(5,2)
2 ##(5//2)
1 ##(2//2)
0 ##(1//2)
这是我目前拥有的:
def Base(number,base):
result=1
if result==0:
return False
else:
result=number//base
return Base(result,base)
我想这就是您要找的
def Base(number,base):
if number==0:
return False
else:
number = number//base
print(number)
return Base(number,base)
首先应该删除 using result = 1 ,因为在每次递归调用期间结果将被重新初始化为 1 并且以下 if 语句将永远不起作用。
你需要做的是继续递归地划分数字直到它达到 0 并打印 False
希望能解开你的疑惑
我正在尝试取一个数字,对其进行底除法,直到它变为 0。这必须使用递归和基本情况来完成。 例如:
>>>Base(5,2)
2 ##(5//2)
1 ##(2//2)
0 ##(1//2)
这是我目前拥有的:
def Base(number,base):
result=1
if result==0:
return False
else:
result=number//base
return Base(result,base)
我想这就是您要找的
def Base(number,base):
if number==0:
return False
else:
number = number//base
print(number)
return Base(number,base)
首先应该删除 using result = 1 ,因为在每次递归调用期间结果将被重新初始化为 1 并且以下 if 语句将永远不起作用。 你需要做的是继续递归地划分数字直到它达到 0 并打印 False
希望能解开你的疑惑