1. 程式人生 > >if __name__ == '__main__' 如何正確理解

if __name__ == '__main__' 如何正確理解

初學者 如何 是我 簡單的 手寫 內容 代碼 應該 而已

今天刷知乎,突然看到這個問題,發現很多人都是簡單的回答了一下,對於很多人來說,更準確的說應該是大部分的 Python 初學者,這樣的回答很容易讓人理解。所以這裏我來做說一下,希望能把這個問題說明白。

先舉一個例子:假設我們有一個add.py文件,裏面的代碼是這樣:

def add(a, b):
return a + b
add(1,2)#用於測試上面函數是否正常

這裏就是一個求兩數之和的函數,然後我在另一個文件中調用這個模塊,這個時候就會把add(1,2)也運行,但是我是不希望運行add(1,2)的,這個只是我測試一下隨手寫的而已。

然後怎麽辦呢,這個時候我就在原先的文件中加上if __name__ == ‘__main__‘

內容如下:

def add(a, b):
return a + b
if __name__ == ‘__main__‘:
add(1,2)

這個時候再調用這個模塊的時候就不會運行add(1,2)了

if __name__ == ‘__main__‘:的意思就是:當這個程序直接運行的時候才執行後面的代碼,所以當這個文件在其他文件中被調用的時候就不會運行後面的代碼

if __name__ == '__main__' 如何正確理解