關於 if __name__ == '__main__' 的理解

簡介:python

Python爲腳本語言,不像其餘編譯語言同樣,在運行以前,先將程序編譯成二進制,在運行。該語言運行方式爲逐行解釋運行,所以,在整個程序中沒有統一的程序入口。spa

Python源文件除了能夠被直接運行外,還能夠做爲模塊被其餘python文件導入。無論是直接運行仍是被導入,.py文件的最頂層代碼都會被運行,而當一個.py文件做爲模塊被導入時,有一部分代碼可能不被但願運行。所以,該語句便起了相當重要的做用。code

使用方法說明:it

if __name__ == '__main__'的意思是:io

       當.py文件被直接運行時if __name__ == '__main__'之下的代碼塊將被運行編譯

       當.py文件以模塊形式被導入時if __name__ == '__main__'之下的代碼塊不被運行class

運行原理:import

a.py   代碼以下:原理

        print (__name__)二進制

   運行結果爲:  main

b.py  代碼以下

        import a

        print(__name__)

    運行結果爲: a 和 main     其中 a爲 a.py 的 name ,而 main 則爲 b.py 的 name。

 

  所以該語句主要就是判斷是不是程序主入口,若是是程序主入口,則代碼塊執行,不然代碼塊不執行

相關文章
相關標籤/搜索