请总结以下Python代码的功能，并在总结中指出代码的关键操作和输出：

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

result = factorial(5)
print(result)
```
user
这段Python代码定义了一个递归函数`factorial`，用于计算给定整数`n`的阶乘。代码的关键操作包括：
1. 函数`factorial`判断`n`是否为0，如果是则返回1（因为0的阶乘定义为1）。
2. 如果`n`不为0，则递归调用`factorial(n - 1)`，并将结果与`n`相乘，返回最终结果。
3. 代码最后调用`factorial(5)`，计算5的阶乘，并使用`print`函数输出结果。

**输出**：代码将输出`5`的阶乘，结果为`120`。
assistant