python 中 if __name__ == '__main__' 判斷的做用

假設這樣一個a.py文件函數

def fun1():code

  ........string

def fun2():class

  .........import

 

if __name__=='__main__':引用

  ......#執行的一些語句程序

 

當你執行這個a.py文件時, __name__ == '__main__'爲真,後面的語句能夠執行im

當你在別的文件中import a文件,當作模塊使用時,__name__ == '__main__'爲假,後面的語句不執行了,只有前面定義的函數其做用.word

若是沒有這句話話,你在b.py中引用a的話,那些執行語句也會執行。假設你只想引用a中的函數,那你就得加這句話。文件

因此,這句話是爲了讓你把一個文件既能夠當作可執行的,有能夠當作可引入的模塊。Python中當你引用一個模塊時,它會執行全部的語句,你只想要函數的話,就用那句話擋住它不要往下找,只把函數找出來就好。

每一個模塊都有內置屬性__name__,當是執行程序時,是‘__main__’,是導入模塊時,是'a' 就是模塊的名字。

相關文章
相關標籤/搜索