2024-09-30 16:33:32 发布
网友
我刚开始学Python。我必须用Python3.7。 有人能给我看一个有效的阶乘码吗? 我尝试了一些我在这里找到的,但我总是得到这个错误:
=================== RESTART: C:\programozás\pytutorial.py ===================
代码:
def factorial(n): result = 1 for i in range(1, n + 1): result *= i return result
我看到一个关于这个错误的相关(旧的)线程here
对于逻辑: 我们必须考虑:
所以写的一种方法是:
def factorial(n): if n < 0: result = "Factorial doesn't exist for negative numbers" elif n == 0: result = 1 else: result = 1 for i in range(1, n + 1): result *= i return result
您也可以尝试递归的概念。你知道吗
要获取数字“num”的阶乘:
print(factorial(num))
确保正确缩进代码,缩进在python中很重要。你知道吗
希望有帮助!你知道吗
问题很可能是由于.py文件的路径中有一个特殊字符引起的。所以应该使用像C:\programming这样的文件夹,或者任何没有特殊字符的文件夹,比如'aa'。你知道吗
这样做是非常重要的,即使它不能解决你目前的问题,它可以防止更多的未来。你知道吗
注:Jókiszúrni magyar programozót is:)
您的代码正在运行,即使您可以简单地使用math库:
math
import math print(math.factorial(5))
这个问题并不是源于您的脚本,所以也许您应该尝试重新安装python,并避免使用Adam Toth指出的带有特殊字符的路径。你知道吗
Update: to get the input and return a factorial as asked in comments
import math print(math.factorial(int(input(">>"))))
我看到一个关于这个错误的相关(旧的)线程here
对于逻辑: 我们必须考虑:
所以写的一种方法是:
您也可以尝试递归的概念。你知道吗
要获取数字“num”的阶乘:
确保正确缩进代码,缩进在python中很重要。你知道吗
希望有帮助!你知道吗
问题很可能是由于.py文件的路径中有一个特殊字符引起的。所以应该使用像C:\programming这样的文件夹,或者任何没有特殊字符的文件夹,比如'aa'。你知道吗
这样做是非常重要的,即使它不能解决你目前的问题,它可以防止更多的未来。你知道吗
注:Jókiszúrni magyar programozót is:)
您的代码正在运行,即使您可以简单地使用
math
库:这个问题并不是源于您的脚本,所以也许您应该尝试重新安装python,并避免使用Adam Toth指出的带有特殊字符的路径。你知道吗
相关问题 更多 >
编程相关推荐