1. 程式人生 > >python中if __name__ == '__main__': 的解析

python中if __name__ == '__main__': 的解析

當你開啟一個.py檔案時,經常會在程式碼的最下面看到if __name__ == '__main__':,現在就來介 紹一下它的作用.


模組是物件,並且所有的模組都有一個內建屬性 __name__。一個模組的 __name__ 的值取決於您如何應用模組。如果 import 一個模組,那麼模組__name__ 的值通常為模組檔名,不帶路徑或者副檔名。但是您也可以像一個標準的程式樣直接執行模組,在這 種情況下, __name__ 的值將是一個特別預設"__main__"。


在cmd 中直接執行.py檔案,則__name__的值是'__main__';


而在import 一個.py檔案後,__name__的值就不是'__main__'了;


從而用if __name__ == '__main__'來判斷是否是在直接執行該.py檔案


如:


#Test.py


class Test:


    def __init(self):pass


    def f(self):print 'Hello, World!'


if __name__ == '__main__':


    Test().f()


#End


 


你在cmd中輸入:


C:>python Test.py


Hello, World!


說明:"__name__ == '__main__'"是成立的


 


你再在cmd中輸入:


C:>python


>>>import Test


>>>Test.__name__                #Test模組的__name__


'Test'


>>>__name__                       #當前程式的__name__


'__main__'


無論怎樣,Test.py中的"__name__ == '__main__'"都不會成立的!


所以,下一行程式碼永遠不會執行到!


相關推薦

pythonif __name__ == '__main__': 的解析

當你開啟一個.py檔案時,經常會在程式碼的最下面看到if __name__ == '__main__':,現在就來介 紹一下它的作用. 模組是物件,並且所有的模組都有一個內建屬性 __name__。一個模組的 __name__ 的值取決於您如何應用模組。如果 import

python if __name__=="__main__" 的用法

在編寫規範的Python指令碼中,經常會出現以下函式: > if __name__ == "__main__" 初學者可能會產生迷惑,其實它就是一個特殊的函式,類似於我們用 def 定義的,下面來解釋一下。 - 1、這段程式碼的功能

淺析Pythonif __name__ == __main__”的意義

首先可以用一句話概括:if __name__ == __main__語句的意義是為了使當前指令碼可以正常執行,在被其他指令碼呼叫時也可以執行 舉個栗子:   print.py 檔案中的程式碼如下:                      print “the first”

Pythonif __name__ == '__main__': 的解析

運行 more 主程 python代碼 理解 copy 復用 def ble 在很多Python代碼中,在代碼的最下方會看到 if __name__ == ‘__main__‘:,這段代碼到底有什麽用呢? 在理解這個語句的作用前,需要知道的是,一般的Python文件後綴為

pythonif __name__ == '__main__': 的解析

ons 標準 直接 沒有 解析 main函數 它的 打開 num python 中__name__ = ‘__main__‘ 的作用,到底幹嘛的? 有句話經典的概括了這段代碼的意義: “Make a script both importable and executable

pythonif __name__ == '__main__':

not pri ons import lee ng- iter eas port Using a module‘s __name__ Example? 8.2.? Using a module‘s __name__ #!/usr/bin/python #

Pythonif __name__ == "__main__": 的作用 (整理轉自Arkenstone) --感謝!

color 輸出 else 理解 style blog another 目的 主程 Python中if __name__ == "__main__": 的作用 在很多python腳本中在最後的部分會執行一個判斷語句if __name__ == "__main__:",之後還

Python if __name__ == '__main__' 的正確理解

設置 例子 pre 入口 測試 idt packages 衍生 運行 程序入口 對於很多編程語言來說,程序都必須要有一個入口,比如 C,C++,以及完全面向對象的編程語言 Java,C# 等。如果你接觸過這些語言,對於程序入口這個概念應該很好理解,C 和 C++ 都需要有一

python if __name__=="__main__" 的用法

在編寫規範的Python指令碼中,經常會出現以下函式: > if __name__ == "__main__" 初學者可能會產生迷惑,其實它就是一個特殊的函式,類似於我們用 def 定義的,下面來解釋一下。 - 1、這段程式碼的功能 一個 pytho

if __name__=="__main__" pythonif __name__ == '__main__'

python中if __name__ == '__main__'   python 中__name__ = '__main__' 的作用,到底幹嘛的? 有句話經典的概括了這段程式碼的意義: “Make a script both importable and ex

Pythonif __name__=='__main__':”理解與總結

1 引言 2 程式入口         學過Java、C、C++的程式設計師應該都知道,每次開啟一個程式,都必須寫一個主函式作為程式的入口,也就是我們常說的main函式。如下所示, main()就是Java中的一個main函式。 public class

python if __name__ == '__main__':作用

對於很多程式語言來說,程式都必須要有一個入口,比如 C,C++,以及完全面向物件的程式語言 Java,C# 等。如果你接觸過這些語言,對於程式入口這個概念應該很好理解,C 和 C++ 都需要有一個 main 函式來作為程式的入口,也就是程式的執行會從 main 函式開始。同樣,Java 和 C

簡單理解Pythonif __name__ == '__main__'的用法和理解

由於python沒有一個明確的程式入口,一般python會把程式入口寫成: if name == ‘main’ : XXX(xxx) ------分割線---- 含義:判斷__name__和__main__是否為真,為真則執行下方程式碼。 舉個例子: 有個檔案,1.py,在1.py中,__n

Pythonif __name__ == '__main__':的作用

運行原理 才會 即將 -o 之前 一個 png 包含 滿足 一個python文件通常有兩種使用方法,第一是作為腳本直接執行,第二是 import 到其他的 python 腳本中被調用(模塊重用)執行。因此if __name__ == ‘main‘: 的作用就是控制這兩種情況

python 關於 if __name__ == “__main__" 的使用

3、因此,在python中,當一個module作為整體被執行時,moduel.__name__的值將是"__main__";而當一個module被其它module引用時,module.__name__將是module自己的名字,當然一個module被其它module引用時,其本身並不需要一個可執行的入口ma

Pythonif __name__ == '__main__' 解析

1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')。 if __name__ == '__main__'的意思是:當.py檔

理解pythonif __name__ == '__main__'

1.摘要 通俗的理解:假如你叫小明的.py,在朋友眼中,你是小明;在你自己眼中,你是你自己。name == 'main'(name == '小明')(name == 'main') if name == 'main'的意思是:當的.py檔案被直接執行時,之下的程式碼塊將被

Pythonif __name__ == "__main__" 的作用、程式碼執行順序、特殊變數

寫這個問題是因為之前自己會在.py檔案中寫一個def main():, 然後再執行main(),結果被批了,說Python比較規範的寫法應該是 if __name__ == "__main__" : 然後在此程式碼塊中寫要執行的主函式。這裡將 對if __name__ ==

如何理解Pythonif __name__ == '__main__'

摘要 通俗的理解__name__ == ‘main’:假如你叫小明.py,在朋友眼中,你是小明(name == ‘小明’);在你自己眼中,你是你自己(name == ‘main’)。 if name == 'main’的意思是:當.py檔案被直接執行時,if

如何簡單地理解Pythonif __name__ == '__main__'

1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')。 if __name__ == '__mai