跳到内容

缺少shebang-python (EXE003)

派生自 flake8-executable linter。

作用

检查 `.py` 文件中不包含 `python`、`pytest` 或 `uv run` 的 shebang 指令。

为什么这不好?

在 Python 中,shebang(也称为 hashbang)是脚本的第一行,用于指定运行该脚本的命令。

对于 Python 脚本,如果 shebang 不包含明确或隐式指定解释器的命令,那么文件将使用默认解释器执行,这很可能是一个错误。

示例

#!/usr/bin/env bash

建议改为

#!/usr/bin/env python3

参考