<strike id="ca4is"><em id="ca4is"></em></strike>
  • <sup id="ca4is"></sup>
    • <s id="ca4is"><em id="ca4is"></em></s>
      <option id="ca4is"><cite id="ca4is"></cite></option>
    • 二維碼
      企資網

      掃一掃關注

      當前位置: 首頁 » 企業資訊 » 行業 » 正文

      ___name__有什么用

      放大字體  縮小字體 發布日期:2023-02-23 22:17:09    作者:微生希亞    瀏覽次數:125
      導讀

      在Python程序中,你會經常看到__name__,例如:if __name__ == '__main__':main()本文將介紹如何正確使用和理解這個變量。請注意,__name__在程序中是一個變量,只不過這個變量的命名有點奇怪,用雙下劃線開

      在Python程序中,你會經常看到__name__,例如:

      if __name__ == '__main__': main()

      本文將介紹如何正確使用和理解這個變量。

      請注意,__name__在程序中是一個變量,只不過這個變量的命名有點奇怪,用雙下劃線開頭和結尾。這種命名的方法,在Pyhton的類對象設計中,常常用于一些具有特殊作用的屬性或者方法名稱[2]。

      如果將編寫的一個Python文件,即.py為擴展名的文件,作為模塊被其他程序引入的時候,我們需要通過__name__這個變量,決定在引入的時候是否要運行該文件。

      例如創建一個文件namescript.py,內容如下:

      def my_function(): print('the value of __name__ is ' + __name__) def main(): my_function() if __name__ == "__main__": main()

      如果執行namescript.py文件,其執行流程如下:

      在程序中的代碼被執行之前,Python解析器先給__name__變量賦值為__main__。然后逐行執行程序中的代碼。注意,當執行到第7行的時候,判斷__name__的值是否為__main__,如果條件為真,就執行main()這個前面自定義的函數,并最終打印出結果。

      如果將namescript.py文件作為一個模塊,在另外一個文件中引入,例如在名為importingscript.py的文件中,有代碼:

      import namescript as nsns.my_function()

      這樣,就在importingscript.py文件中使用了namescript.py文件中定義的函數my_function。如此,避免了重復代碼,而且提升了開發效率。這是Python語言的重要特點。

      如果執行importscript.py文件,其流程如下圖所示:

      在importscript.py中,變量__name__被賦值為__main__,然后執行import namescript,Python解析器會自動在模塊名字后面增加.py并在檢索目錄中查找該文件——所以,在引入模塊的時候不要寫成import namescript.py。找到了,就引入該文件中的所有代碼。

      然后,將namescript.py文件所運行的空間中的__name__設置為namescript。結合上圖,在importingscript.py和namescript.py中,分別有兩個同名的__name__變量,但是,它們的值不同。如此,在namescript.py中,因為__name__的值是namescript了,于是該文件中的if __name__ == "__main__"條件不再成立,所以此條件下的main()函數不再執行。

      在importingscript.py中,調用了namescript.my_function(),打印的結果是:the value of __name__ is namescript,這里的__name__當然是namescript.py中的變量。

      如果在importingscript.py中,增加print(__name__),打印出來的結果應該是__main__。

       
      (文/微生希亞)
      免責聲明
      本文僅代表作發布者:微生希亞個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
       

      Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

      粵ICP備16078936號

      微信

      關注
      微信

      微信二維碼

      WAP二維碼

      客服

      聯系
      客服

      聯系客服:

      在線QQ: 303377504

      客服電話: 020-82301567

      E_mail郵箱: weilaitui@qq.com

      微信公眾號: weishitui

      客服001 客服002 客服003

      工作時間:

      周一至周五: 09:00 - 18:00

      反饋

      用戶
      反饋

      午夜久久久久久网站,99久久www免费,欧美日本日韩aⅴ在线视频,东京干手机福利视频
        <strike id="ca4is"><em id="ca4is"></em></strike>
      • <sup id="ca4is"></sup>
        • <s id="ca4is"><em id="ca4is"></em></s>
          <option id="ca4is"><cite id="ca4is"></cite></option>
        • 主站蜘蛛池模板: 久久久国产99久久国产一| 再深点灬舒服灬太大了老板| 九九久久精品国产AV片国产| 一区两区三不卡| 欧美性生交xxxxx久久久| 国产麻豆一精品一av一免费| 亚洲精品福利你懂| 91香蕉视频污污| 欧美边吃奶边爱边做视频| 国精产品一区一区三区MBA下载 | 国产激情自拍视频| 亚洲va欧美va国产综合| 五月天综合视频| 欧洲亚洲综合一区二区三区| 国产欧美综合一区二区| 久热这里有精品| 青青草原亚洲视频| 精品露脸国产偷人在视频| 把女人弄爽大黄a大片片| 品色堂永久免费| 一区二区三区免费视频网站| 班主任丝袜脚夹茎故事| 国模私拍福利一区二区| 亚洲字幕在线观看| 欧美成人777| 日本三级高清电影全部| 啊灬啊灬啊快日出水了| lisaannxxxxx| 欧美特黄a级高清免费大片| 国产精品天干天干| 久久精品无码一区二区三区| 高清一级做a爱免费视| 打开双腿让老乞丐玩| 免费在线你懂的| 7777精品伊人久久久大香线蕉| 欧洲97色综合成人网| 国产午夜鲁丝片av无码免费| 中国jizz日本| 波多结衣一区二区三区| 国产福利一区二区| 丰满岳乱妇在线观看视频国产|