You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无返回值的Python main函数如何正确进行类型标注

Python 无返回值main函数的正确类型标注

因为你明确main函数没有任何返回值,标准标注方式是给返回值声明None类型,示例代码如下:

def main() -> None:
    # 此处写你的业务逻辑
    print("脚本执行逻辑")

if __name__ == '__main__':
    main()

标注说明

  • -> None会明确告知mypy、pyright等类型检查工具,该函数执行完成后不会返回任何有效值,如果你不小心在函数内写了带值的return语句,类型检查工具会直接抛出错误,符合你的场景要求。
  • 不要使用NoReturn作为返回类型,NoReturn仅用于标记永远无法正常执行完成的函数(比如一定会抛出异常、一定会调用os._exit终止进程的函数),普通执行完成自然退出的main函数不适用该标注。

带命令行参数的main标注示例

如果你的main需要接收命令行参数,可以同步标注参数类型:

import sys

def main(argv: list[str]) -> None:
    if len(argv) < 2:
        print("请传入必要参数")
        return
    print(f"输入参数为:{argv[1]}")

if __name__ == '__main__':
    main(sys.argv)

如果需要兼容Python 3.9及更早版本,在脚本顶部添加from __future__ import annotations即可避免集合类型标注的运行时报错。

内容的提问来源于stack exchange,提问作者user3313834

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 18:15:04