使用普通的for循环
```python
def factorial(n):
result = 1
for i in range(1, n + 1):
result *= i
return result
print(factorial(5)) 输出:120
使用递归函数
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n - 1)
print(factorial(5)) 输出:120
使用内置的`math.factorial()`函数
```python
import math
print(math.factorial(5)) 输出:120
使用`reduce()`函数
```python
from functools import reduce
def factorial(n):
return reduce(lambda x, y: x * y, range(1, n + 1))
print(factorial(5)) 输出:120
使用while循环
```python
def factorial(n):
result = 1
i = 1
while i <= n:
result *= i
i += 1
return result
print(factorial(5)) 输出:120
以上方法都可以用来计算阶乘,你可以根据具体的需求和个人偏好选择合适的方法