亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

淺析Python __name__ 是什么

瀏覽:114日期:2022-07-18 13:10:41

前言

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

if __name__ == ’__main__’: func_name()

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

__name__

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

>>> dir(__builtins__)

結果如下圖:

淺析Python __name__ 是什么

不同情況下的 __name__ 的值

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

Example 0

# test.pyprint(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.pyimport testprint(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.pydef hello(name): print(f’Hello,{name}’)if __name__ == ’__main__’: hello('test')

再修改一下 test1.py 文件

# test1.pyfrom test import hellohello('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,testHello,test1

參考

What does if name == “main”: do?

What’s in a (Python’s) name?

到此這篇關于Python __name__ 是什么的文章就介紹到這了,更多相關Python __name__ 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久精品视频99精品视频150 | 欧美三级网站 | 悟空影视大全免费影视 | 欧洲女同互慰在线视频 | 一级毛片免费不卡在线 | 欧美成人免费tv在线播放 | 国产亚洲精品九九久在线观看 | 亚洲成人自拍网 | 成人毛片免费视频播放 | 萌白酱在线喷水福利视频 | 97在线视频免费观看 | 欧美在线播放成人免费 | 99精品久久99久久久久久 | 亚洲理论欧美理论在线观看 | 久久精品一品道久久精品9 久久精品一区 | 久久久久亚洲香蕉网 | 亚洲视频在线观看视频 | 国产欧美一区二区三区免费 | 中国黄色网址大全 | 日本苍井一级毛片 | 久久中文字幕免费视频 | 日本乱理伦中文三区 | 手机看片欧美 | 成人影院vs一区二区 | 怡红院爽妇网 | 国产亚洲精品高清在线 | 欧美成人亚洲综合精品欧美激情 | 日韩中文字幕在线视频 | 欧美一区二区三区激情视频 | 香蕉福利久久福利久久香蕉 | 曰本一区 | 久久久国产一区二区三区丝袜 | 韩国日本一级片 | 黄色三级网址 | 美国一级毛片不卡无毒 | 免费a黄色 | 特黄aa级毛片免费视频播放 | 日本aaa视频| 国产精品久久久久久久久久免费 | 欧美激情免费观看一区 | 国产在线观看网址你懂得 |