人工智能微刊

if __name__ == '__main__'

2017-11-27  本文已影响13人  W_Honor
python3.jpeg

What is it ?

在Python规范的脚本代码中,会经常碰到这么一句莫名其妙的语句:

   if __name__=='__main__'

从字面意思上可以理解为,如果名字等于“main”,则执行代码。

python文件通常有两种用法,第一种是作为脚本文件直接执行,第二种是作为模块被调用。

为了使文件同时发挥两个作用,这段代码便起了承上启下的作用。

可以用经典的话来概括:

   “Make a script both importable and executable”

让python文件既可以被调用,同时自己可以独立执行。

举个简单的例子:

创建一个python文件,命名为“test.py”

   print('I am test.py')
   if __name__ == '__main__':
         print(I am main)

执行后,输出:

   I am test.py
   I am main

创建第二个文件,命名为test1.py

  import test

执行后,输出:

  I am test.py

所以由于test1中调用test模块,模块的函数不认生,只执行了if之外的代码。

上一篇 下一篇

猜你喜欢

热点阅读