Python main() 函数
Python 中的 main() 函数是什么?一些编程语言有一个特殊的函数,称为main()程序文件的执行点。然而,Python 解释器从文件顶部依次运行每一行,并且没有明确的main()功能。Python 提供了其他约定来定义执行点。其中之一是使用main()函数和__name__python文件的属性。
Python 中的__name__是什么?__name__变量是一个特殊的 Python 内置变量,显示当前模块的名称。它具有不同的值,具体取决于我们执行 Python 文件的位置。在本教程中,我们将学习如何使用Python main()函数属性在不同的上下文中动态运行它。
推荐:Python类和对象属性
将 Python 文件作为脚本运行
假设我们有一个名为helloworld.py的 Python 文件,其内容如下:
print(__name__)
如果我们从命令行运行helloworld.py,那么它会作为 Python 脚本运行。我们可以使用以下命令运行 Python 程序:
$ python helloworld.py
当我们将程序作为脚本运行时,变量的值__name__被设定为__main__,因此以下程序的输出将是:
__main__
将Python 文件作为模块运行
我们还可以将 Python 文件作为模块运行。为此,我们必须将此文件导入另一个 Python 程序。假设我们在与 heloworld.py 文件相同的目录中有一个名为main.py的 Python 文件。它有以下内容:
import helloworld
当我们运行这个文件时,我们将有以下输出:
helloworld
在这里,我们可以看到导入一个python模块也会运行模块文件中的所有代码。但是,我们可以看到,而不是显示__main__,程序显示模块的名称,即heloworld,这是因为,在将 Python 文件作为模块运行的上下文中,模块本身的名称被分配给__name__变量。
使用带有__name__的 if 条件
现在我们已经了解了如何__name__变量被赋值,我们可以使用if条件子句在不同的上下文中以不同的方式运行同一个 Python 文件。假设我们将helloworld.py文件的内容更改为以下内容:
def main():
print("Hello World")
if __name__=="__main__":
main()
运行代码,现在,当我们通过命令行将其作为脚本运行时,输出将是:
Hello World
但是,当我们通过将其导入main.py文件中将其作为模块运行时,由于main()未调用该函数,因此不会显示任何输出。在这里,我们在helloworld.py文件中创建了一个自定义main()函数。它仅在程序作为独立脚本而不是作为导入模块运行时执行。
总结
以上是晓得博客为你介绍的Python main()函数的全部内容,main()这是在 Python中显式定义函数的标准方法,希望对你的Python编程有所帮助。