Python中的if __name__ == '__main__'

     簡單來講,若是是模塊自己做爲腳本運行時,這個if以後的語句能夠執行,若是該模塊A被import到別的模塊B中,運行模塊B的時候A模塊中的if __name__ == '__main__' 的語句將不會執行。html

     咱們能夠從具體的例子來看:post

 

#my_math.py
def
product(x, y): if x == 7 and y ==9: return 'An insidious bug has surfaced!' return x * y print(__name__)

直接運行my_math.py,將輸出:spa

__main__

而後咱們有另外一個模塊learning.py將my_math import進去:code

#learning.py
import my_math

print(__name__)
print(my_math.__name__)

而後運行learning.py,將會輸出:htm

__main__
my_math

 

總結:當模塊做爲腳本直接運行時,__name__的值是__main__, 可是若是被import到別的模塊中運行時,__name__的值是它本身的名字,如本例爲my_mathblog

 

參考文獻:io

http://www.dengfeilong.com/post/60.htmlclass

相關文章
相關標籤/搜索