首页 > 开发 > Python > 正文

python中的main()函数

2023-04-24 19:21:35
字体:
来源:转载
供稿:网友

像C语言、C++、C#、Java这种语言,程序总是从main函数开始执行的。但Python程序与这些语言不同,它并不需要特殊的函数入口,而是从程序的第一个语句顺序往下执行。但在Python中,只有当直接执行包含main函数的代码块时,main函数可以得到执行,但当包含main函数的语句块被导入时不会被执行。

python main

为什么Python没有固定的main函数?

Python是一种解释型语言,同JavaScript,VbScript一样是一种脚本语言,其运行过程是从上到下,逐行执行的,代码的开始即程序的起点,这决定了它不必像Java,C#那种编译型的语言使用固定的main函数作为程序的入口。

同时,在Python中每个Python文件(后缀为.py)都可以作为一个可以运行的文件,满足实际工作的需要,这种方式更加灵活,而且方便调试。

main函数在Python中有什么用?

在本文第一句话已经讲明了Python中main()函数的作用。如果包含main()函数的模块A中除了main()函数外,可能要单独实现一些功能,并且只想在单独运行A这个文件时,执行main()函数中的功能,而在该代码块被包含在其它代码中B不准备执行main()函数的功能时,可以在A中定义main函数,如在main函数中调试A中的一些功能等。

当然,在习惯了C#,Java,C语言等这种程序的人,可能也想通过main函数告知别人,我的程序是从main这里开始运行的,这种情况也是main函数的一个作用。

main函数是必须的吗?

在Python中,main函数不是必须的,没有main函数,Python程序同样可以运行的很好,只要把程序组织的良好,有没有main函数,同样可以达到实际需要。

关于python中的__name__

__name__是Python中一个内置的变量,用于存储当前运行模块的名称。

当模块直接被执行时,其保存的值为__main__;当模块被其它模块导入时,显示其它模块的名称。

main函数的定义

下面给出一个例子来说明Python中main函数的具体使用方法。

下面这段程序位于名为"hello.py"的文件中。

print("Hello World!")

if __name__ == "__main__":
    print("欢迎关注『优雅的代码』公众号")

print("我在hello里:"+__name__)

运行输出的内容如下:

Hello World!
欢迎关注『优雅的代码』公众号
我在hello里:__main__

下面这段程序位于testmain.py文件中,程序首先导入上面写的hello文件,然后额外输出一行信息。

import hello

print("Hello,优雅的代码")
print("我在test里:"+__name__)

输出结果如下所示:

Hello World!
我在hello里:hello
Hello,优雅的代码
我在test里:__main__

从上面两段程序来看,当当前程序直接被运行时,__name__的值是“__main__”;而程序被包含到其它程序中运行时,位于被包含程序的__name__值是程序的名称,如上面的例子中,hello被包含在testmain中执行时,其__name__输出的值为:hello

以上是关于Python中main函数的介绍,有误之处,敬请留言指正。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表