中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于Python中 __name__ 的簡介

發布時間:2020-07-08 09:51:30 來源:億速云 閱讀:159 作者:清晨 欄目:開發技術

這篇文章主要介紹關于Python中 __name__ 的簡介,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

在我們瀏覽一下 python 文件或者自己寫 python 代碼的時候,時常會在代碼的最后加上這樣的一行代碼

if __name__ == '__main__':
 func_name() 

那么這一行代碼有什么具體的作用呢,不加的話會對我們的結果造成影響嗎?

__name__

首先對于用雙下劃線開頭且結尾的變量,在 Python 中被稱為內置變量,除了 __name__,我們常見的還有 __init____dict__ 等等.那么有多少內置變量呢?我們可以通過下面在交互界面輸入下面的命令,查看 Python 全部內置變量和內置函數

>>> dir(__builtins__)

結果如下圖:

關于Python中 __name__ 的簡介

不同情況下的 __name__ 的值

首先我們需要知道 __name__ 在不同情況下會有不同值,它的值取決于我們是如何執行腳本的.我們可以通過幾個例子感受一下:

Example 0

# test.py
print(f'__name__ 在 test.py 值為 {__name__}')

然后直接執行一下代碼

$ python test.py

然后看一下輸出

$ python test.py 
__name__ 在 test.py 值為 __main__

在這個例子中,我們發現 __name__ 的值是 __main__

Example 1

在這個例子中,我們重新創建一個腳本 test1.py 然后我們在 test1.py 中調用 test.py

# test1.py
import test
print(f'__name__ 在 test1.py 值為 {__name__}')

接著執行一下 test1.py,再看一下輸出

python test1.py 
__name__ 在 test.py 值為 test
__name__ 在 test1.py 值為 __main__

結果是不是很有意思?整個過程是什么樣子的呢?簡單的畫了一個圖

關于Python中 __name__ 的簡介

什么時候使用 __name__

有時候,我們用 Python 寫了一個腳本,當我們既希望這個腳本可以單獨運行,同樣希望它可以在其他的腳本中發揮作用. 這個時候就需要考慮使用 __name__ 了. 這里通過改造上面 Example 1的例子來直觀感受一下

修改一下 test.py 文件

# test.py
def hello(name):
 print(f'Hello,{name}')
if __name__ == '__main__':
 hello("test")

再修改一下 test1.py 文件

# test1.py
from test import hello
hello("test1")

然后讓我們先嘗試直接運行一下 test.py,很顯然這個時候, if 語句條件滿足,會輸出 Hello,test

$ python test.py 
Hello,test

這個時候我們如果運行 test1.py,程序就會輸出 Hello,test1 了

$ python test1.py 
Hello,test1

如果我們把 if __name__ == "__main__"test.py 去掉會發生什么呢?

$ python test1.py 
Hello,test
Hello,test1

以上是關于Python中 __name__ 的簡介的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辛集市| 吉隆县| 长乐市| 天等县| 黎川县| 巴林左旗| 公安县| 孟州市| 封丘县| 深州市| 盐亭县| 砀山县| 平果县| 昌江| 阿拉善左旗| 海南省| 广元市| 崇州市| 夹江县| 沾益县| 长治市| 南昌市| 靖安县| 建宁县| 灌南县| 梅河口市| 宁蒗| 商洛市| 上蔡县| 营口市| 策勒县| 宁德市| 农安县| 镇远县| 突泉县| 贵定县| 巴里| 错那县| 诏安县| 泸西县| 长治市|