为什么Python中没有main()函数?

为什么Python中没有main()函数?

在本文中,我们将了解为什么 Python 中没有 main() 函数。

毫无疑问,Python 没有所谓的main函数,但是,关于 互联网上经常引用“Python的主要函数”和“建议编写 主要功能。"

他们的目的可能是复制最初的主要方法,但许多人 被误导(或误解)并因此创建极其复杂的代码。

在开始之前,我们将回答以下两个问题 -

  • “主要功能”到底是什么?

  • 为什么有些编程语言需要使用main函数?

一些编程语言,例如 C/C++、C#、Java、Go、Rust 等,采用 main函数作为程序的执行入口,有特定的含义 -

  • 这个主函数名称是必需的,意味着必须有一个主函数 功能。

  • 因为只能有一个main函数,所以程序的每一个入口都是 独一无二。

  • 语法格式有特定的要求并且遵循非常一致(固定)的 模板。

为什么一定要做main入口函数 强制性的?

这些是编译语言,需要将代码编译成可执行文件 操作系统/引导加载程序的二进制文件来查找程序的启动,因此您 必须定义这一函数。

简单地说,有一个重要的开始,必须在大量的内容中定义 可执行代码。

主要功能是这些语言的基本有机特征。

但是,当我们返回 Python 时,情况发生了巨大变化。

  • Python 是一种解释语言,也称为脚本语言。这 运行过程从上到下,逐行运行,这意味着它的 起点已知。

  • 每个.py文件都是一个可执行文件,可以用作程序的入口点, 意味着程序的入口点是灵活的,并且不必遵循约定 已关注。

  • 在不指定入口文件的情况下执行Python项目时(越多 典型的命令行,例如“python -m http.server 8000”),可能是由于 存在 main.py 文件,该文件在包中作为“文件”执行以下操作 操作。

综上所述,脚本语言Python不同于编译语言。它可以 在单个模块(即 .py 文件)级别选择灵活的执行技术, 或者在由许多模块组成的包级别,不像其他语言不能 无需明确定义的条目即可实现。

也就是说,Python不需要程序员指定统一的入口(无论是 它是语法级别的函数、类或其他)。

有些用户可能会感到困惑,因为他们经常遇到或编写以下代码 -

# defining the main function using the def keyword def main(): …… if __name__ == '__main__': main() 登录后复制