<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    作者:微生希亞    瀏覽次數:98
      導讀

      在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精品在线免费| 天天在线天天综合网色| 在线私拍国产福利精品| 国产一级淫片a| 亚洲av之男人的天堂| 99精品国产综合久久久久五月天| 精品三级AV无码一区| 性欧美高清come| 国产午夜无码视频免费网站 | 在线观看亚洲成人| 亚洲精品亚洲人成在线观看 | 天天摸日日摸人人看| 未满十八18禁止免费无码网站 | 国产精品熟女一区二区| 任你躁在线精品免费| 丰满少妇又爽又紧又丰满在线观看| 五月天综合视频| 日韩精品专区在线影院重磅| 国产精品多p对白交换绿帽| 亚洲精品无码不卡在线播放| 一区二区三区亚洲视频| 狠狠色丁香久久婷婷综合五月| 少妇高潮喷水久久久久久久久久 | 亚洲成AV人片在线观看ww| 亚洲香蕉久久一区二区| 欧美日韩国产人成在线观看| 在线观看亚洲网站| 亚洲成a人片在线观看中文| 日本色图在线观看| 最近高清中文在线国语字幕 | 日韩欧美理论片| 国产成人免费午夜在线观看| 亚洲av无码电影网| 野花视频在线官网免费1| 成人午夜性a一级毛片美女| 国产v在线播放| yellow字幕网在线| 黄色成人在线网站| 日日噜噜噜夜夜爽爽狠狠| 免费看欧美一级特黄α大片| 丁香六月婷婷精品免费观看|