【发布时间】:2019-02-22 15:46:42
【问题描述】:
我有一个作业要求我使用 Python 递归函数以如下形式输出用户输入数字的因子:
输入一个整数:6
6 的因数是:
1
2
3
6
我现在感觉有点迷茫,在过去的 2 个小时里我尝试了自己做所有事情,但根本无法到达那里。如果可能的话,我宁愿被推向正确的方向,也不愿显示我想学习的代码需要更改的地方
下面是我的代码:
def NumFactors(x):
for i in range(1, x + 1):
if x == 1:
return 1
if x % i == 0:
return i
return NumFactors(x-1)
x = int(input('Enter an integer: '))
print('The factors of', x, 'are: ', NumFactors(x))
【问题讨论】:
-
如果你发布你的输入和你得到的输出,你可能会帮助自己解决这个问题,然后你可以看到你的代码在做什么
-
提示:您的
print调用期望NumFactors()返回一个列表。但是你的代码没有建立一个列表。