我正在使用idle for python,但是主函数没有正确执行,有人能告诉我我哪里做错了吗?

我正在使用idle for python,但是主函数没有正确执行,有人能告诉我我哪里做错了吗?,python,Python,PFB代码它只给我数字,但它没有在主函数中执行函数 def factorial(n): if n==0: return 1 else: return n*factorial(n-1) def main(): n = int(input("Enter the number : ")) factorial(n) main() 输出: Enter the number: 8 8 您需要从阶乘返回结果: 是的…你既不返回也不打印结果

PFB代码它只给我数字,但它没有在主函数中执行函数

def factorial(n):
    if n==0:
        return 1
    else:
        return n*factorial(n-1)

def main():
    n = int(input("Enter the number : "))
    factorial(n)

main()
输出:

Enter the number: 8
8

您需要从阶乘返回结果:


是的…你既不返回也不打印结果…!?仍然得到同样的结果。输入号码:5>>>您是以交互方式还是直接调用脚本来执行此操作?在后一种情况下,将返回factorialn替换为printfactrialn。是的,它现在可以工作了。谢谢你,但是你能解释一下为什么它不起作用,如果只是为了我的理解而返回的话。提前谢谢:要在屏幕上打印一些东西,你需要使用print。return只是将结果返回给被调用的对象,在这种情况下,返回到编写main的位置。在交互式控制台中,当结果处于顶层时,将自动打印结果。交互式控制台也称为REPL:read-eval-print循环。
def main():
    n = int(input("Enter the number : "))
    return factorial(n)