__name__
首先對于用雙下劃線開頭且結尾的變量,在 Python 中被稱為 內置變量 ,除了 __name__ ,我們常見的還有 __init__ , __dict__ 等等.那么有多少內置變量呢?我們可以通過下面在交互界面輸入下面的命令,查看 Python 全部內置變量和內置函數 >>> dir(__builtins__)結果如下圖: (9500.163.com)不同情況下的 __name__ 的值
首先我們需要知道 __name__ 在不同情況下會有不同值,它的值取決于我們是如何執(zhí)行腳本的.我們可以通過幾個例子感受一下:Example 0
# print(f'__name__ 在 值為 {__name__}')然后直接執(zhí)行一下代碼 $ python 然后看一下輸出 $ python __name__ 在 值為 __main__在這個例子中,我們發(fā)現(xiàn) __name__ 的值是 __main__Example 1
在這個例子中,我們重新創(chuàng)建一個腳本 然后我們在 中調用 # import test print(f'__name__ 在 值為 {__name__}')接著執(zhí)行一下 ,再看一下輸出 python __name__ 在 值為 test __name__ 在 值為 __main__結果是不是很有意思?整個過程是什么樣子的呢?簡單的畫了一個圖 (9501.163.com)什么時候使用 __name__
有時候,我們用 Python 寫了一個腳本,當我們既希望這個腳本可以單獨運行,同樣希望它可以在其他的腳本中發(fā)揮作用. 這個時候就需要考慮使用 __name__ 了. 這里通過改造上面 Example 1的例子來直觀感受一下 修改一下 文件 # def hello(name): print(f'Hello,{name}') if __name__ == '__main__': hello("test")再修改一下 文件 # from test import hello hello("test1")然后讓我們先嘗試直接運行一下 ,很顯然這個時候, if 語句條件滿足,會輸出 Hello,test $ python Hello,test這個時候我們如果運行 ,程序就會輸出 Hello,test1 了 $ python Hello,test1如果我們把 if __name__ == "__main__" 在 去掉會發(fā)生什么呢? $ python Hello,test Hello,test1 達到當天最大量API KEY 超過次數限制1.《#NAME?,干貨看這篇!「Python」__name__ 是什么?》援引自互聯(lián)網,旨在傳遞更多網絡信息知識,僅代表作者本人觀點,與本網站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。
2.《#NAME?,干貨看這篇!「Python」__name__ 是什么?》僅供讀者參考,本網站未對該內容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。
3.文章轉載時請保留本站內容來源地址,http://f99ss.com/lishi/2097753.html