由於Python中沒有main()函數,所以當向解釋器提供執行python程式的命令時,將執行0級縮排的程式碼。但是,在執行此操作之前,它將定義一些特殊變數;__name__就是這樣的一個特殊變數。以下這篇就來帶大家了解特殊變數__name__,希望對大家有幫助。
__name__是內建變量,其計算結果為目前模組的名稱。如果原始檔案是作為主程式執行,則解釋器將__name__變數設定為具有「__main__」的值;如果此檔案是從另一個模組匯入的,則__name__將設定為模組的名稱。
因此,它可用於檢查目前腳本是單獨執行還是透過將其與if語句組合在其他位置匯入。
下面我們透過範例來了解:
有兩個單獨的檔案File1和File2。
File1.py
print "File1 __name__ = %s" %__name__ if __name__ == "__main__": print "File1正在直接运行" else: print "File1正在导入"
File2.py
import File1 print "File2 __name__ = %s" %__name__ if __name__ == "__main__": print "File2正在直接运行" else: print "File2正在导入"
現在,解譯器被賦予執行File1.py的指令。
python File1.py
則,輸出:
File1 __name__ = __main__ File1正在直接运行
然後執行File2.py.
python File2.py
輸出:
File1 __name__ = File1 正在导入File1 File2 __name__ = __main__ File2正在直接运行
如上所示,當直接執行File1.py時,解釋器將__name__變數設定為__main__,當透過匯入執行file2.py時,__name__變數被設定為python腳本的名稱,即File1。因此,可以說__name__ ==「__ main__」是使用python File1.py之類的命令從命令列執行腳本時執行的程式的一部分。
相關影片教學推薦:《Python教學》
以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! !
以上是Python中的特殊變數__name__有什麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!