函数返回问题

时间:2013-06-12 02:28:07

标签: python python-3.x return

我正在编写一个代码,要求用户输入一个整数并计算整数所具有的除数。我已经完成了代码,但我仍然坚持“返回部分”。 这是我到目前为止所得到的:

def findDivisors(number):
    decrease = number
    count = 0
    while ( decrease >= 1):
        if ( number%decrease == 0 ):
            count=count+1
    decrease=decrease-1

def main(count):
    number = int(input("Please enter a positive integer : "))
    print(count)

main()

我尝试过返回“数字”和“数字”但似乎无法使其正常工作。 有什么建议 ? 顺便说一下,我正在使用Python 3.3.1

1 个答案:

答案 0 :(得分:1)

  1. 在函数return count的末尾需要findDivisors()
  2. findDivisors()中的缩进似乎不正确(decrease=decrease-1应缩进if语句的第一行。
  3. 我认为您不希望count作为main()函数的参数,尤其是当您在没有任何参数的情况下调用main()时。
  4. 代码中没有证据表明您实际上正在调用函数findDivisors()。我建议用print替换print(findDivisors(number))来电。