Python的主(main)函数问题

python并不像c/c++那样由main函数作为入点函数,而是每个以py为后缀的文件可以单独执行,并且从文件中的第一行执行到最后一行。那么你可能要问一个问题,那么我们一个python工程中可能不止一个py文件,而是很多个,那么每个都能执行那不是乱套了,怎么办呢?

有办法,请看下面。

每个py文件被解释器解释执行的时候,都会默认有一个__name__内置的变量,如果这个py文件是被解释器直接解释执行,而不是被其他的py文件通过import后,调用执行,那么这个__name__变量就是__main__,否则就是该文件的文件名去掉.py后的名字。

 

既然这样,那我们就可以在文件的一开始,加上这么一句:

if __name__ != '__main__'
    quit()

 

这样只有我们的主py文件才会最开始执行。

不过,实际上,这句是用不上的,因为被别人调用py文件中一般都是函数和类的定义,没有实际执行的东西,所以你要是执行它,也没有任何结果。

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.

    分享到:

2 Replies to “Python的主(main)函数问题”

留言给wu_sphinx 取消

你的邮箱是保密的 必填的信息用*表示