Python中if __name__ == '__main__'的使用


#一個python文件的執行方法

  • ##作為腳本語言執行

    實例代碼:

直接執行

可以發現,直接執行test.py文件,可以print兩行字符串。即if__name__ == ' _ _ main _ _ '語句之前和之后的代碼都被執行。

  • ##import到其他的python腳本中被調用(模塊重用)、執行。

    創建import_test.py文件,導入test.py文件

執行文件

只輸出了第一行字符串,即if__name__ == ' _ _ main _ _ '之前的語句執行了。之后的沒有執行。

#if _ _ name _ _ == ' _ _ main _ _ '運行原理

每個python模塊(python文件,也就是此處的 test.py 和 import_test.py)都包含內置的變量 _ _ name _ _ ,當該模塊被直接執行的時候, _ _ name _ _ 等於文件名(包含后綴 .py )

如果該模塊 import 到其他模塊中,則該模塊的 _ _ name _ _ 等於模塊名稱(不包含后綴.py)。

#實例再看

再給test.py腳本if _ _ name _ _ == ' _ _ main _ _'之前加入print( _ name _ )

重新執行文件test.py如下

在執行import_test.py如下

###此時,test.py中的__name__變量值為 test,不滿足 _ _ name _ _ ==" _ _ main _ _ " 的條件,因此,無法執行其后的代碼。

參考博客:https://blog.csdn.net/q2605894893/article/details/82345814


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM