if __name__ == '__main__'的用處

模塊的調用

python 調用其他的模塊的時候 ,其實是會把該模塊先執行一遍的,比如,我們寫一個test.py 內容如下:

"test.py"
print('haha')

然後看我們的主程序main.py

import test
print('main.py')

那麼這個時候,我們運行main.py ,得到的會是

haha
main.py

如何才能只調用test.py 而不執行呢???

引入_name_

這時候_name_ 就派上用場了。

什麼是_name_呢?

  • 當我們沒有import 其他模塊,而只是單純的做如下操作,我們得到的_name_將是 main
"test.py"
print(_name_)

運行test.py ,我們得到_name_將是

_main_
  • 當test模塊被調用時,我們的得到的_name_將是被調用模塊名字去掉後墜,比如:
"main.py"
import test
print('a')

此時執行main.py,我們將得到:

test
a

- 簡單來說就是,如果不涉及模塊導入的話,__name__的值就是” main“,如果當此模塊被導入引用的話,那麼這個模塊內的__name__值就是文件的名字(不帶.py)

  • 所以,我們在被調用的模塊中,可執行的代碼前加上這麼一句判斷,
    if _name _ == ‘_main _’ 被調用的模塊的代碼就不會被執行了!
    尊重原創 請務抄襲
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章