日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

if condition 大于_if __name__ == #x27;__main__#x27;: 究竟起什么作用,阅读本文后,其他文章不必再看...

發(fā)布時(shí)間:2024/10/8 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 if condition 大于_if __name__ == #x27;__main__#x27;: 究竟起什么作用,阅读本文后,其他文章不必再看... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
def

這種形式的代碼,相信你已經(jīng)見過很多,在腳本的末尾,出現(xiàn)一個(gè)if條件判斷,這個(gè)if條件判斷的作用是什么呢, __name__ 事先并沒有定義,為什么可以直接使用呢,它從哪里來? 回答這些問題,必須先了解模塊屬性

1、模塊屬性

一個(gè)python腳本(以.py 結(jié)尾的文件)就是一個(gè)模塊,模塊自身有若干屬性,其中比較常用的是如下兩個(gè)
1. __name__ 模塊的名稱
2. __file__ 腳本的完整文件路徑

在任意一個(gè)python腳本里,你都可以輸出這兩個(gè)屬性

print(__name__) print(__file__)

得到結(jié)果

__main__ /Users/zhangdongsheng/experiment/test/test.py

__name__ 的值是 __main__ ,這表示模塊的名稱是__main__
__file__ 是文件的完整路徑

雖然弄清楚了__name__ 是怎么一回事,但也帶來了新的疑問,明明__name__ 就等于 __main__ ,為何還要做if條件判斷呢?顯然是存在 __name__ 不等于__main__ 的情況。

2、直接執(zhí)行與其他模塊引入

簡單的功能,我們可以在一個(gè)python腳本里完成,但復(fù)雜的功能,我們會(huì)寫多個(gè)python 腳本,比如下面的例子里,有兩個(gè)腳本,一個(gè)是main.py ,做為整個(gè)程序的啟動(dòng)腳本,utils.py 提供一些輔助函數(shù),供main.py使用

(1)utils.py

def

(2)main.py

from

接下來,通過兩步實(shí)驗(yàn),來理解 __name__ 在不同場景下的取值情況。

第一步,先來執(zhí)行utils.py文件

python utils.py

執(zhí)行結(jié)果為

utils 模塊里的__name__ 值為: __main__

第二步,執(zhí)行main.py

python main.py

執(zhí)行結(jié)果為

utils 模塊里的__name__ 值為: utils 輸入兩個(gè)整數(shù),中間用空格分開:5 2 2.5

這里有一個(gè)現(xiàn)象,你必須理解其背后的原因,我們明明執(zhí)行的main.py腳本,但是utils.py腳本里的代碼也被執(zhí)行了,這是因?yàn)樵趍ain.py腳本里引入了utils.py 這個(gè)模塊,被引入的腳本里的代碼會(huì)在引入時(shí)執(zhí)行。

當(dāng)utils.py 被其他腳本引入時(shí),它的__name__ 就不等于__main__, 而是等于utils,恰好是文件名稱去掉.py 剩余的部分。

經(jīng)過上面的實(shí)驗(yàn),我們可以得出兩個(gè)結(jié)論
1. 當(dāng)腳本被直接執(zhí)行時(shí),模塊屬性__name__ 等于__main__
2. 當(dāng)腳本被其他模塊引入時(shí),模塊屬性__name__ 等于腳本名稱去掉.py 后剩余的部分

3、終極目的---測試模塊里函數(shù)

由于一個(gè)腳本被引入時(shí),自身的代碼會(huì)被執(zhí)行,因此我們?cè)诿總€(gè)腳本里都寫上一段if __name__ == '__main__': 如果你希望一些代碼只有在腳本被直接執(zhí)行時(shí)才執(zhí)行,那么就把這些代碼放入到if 語句塊中,最常見的情形就是測試代碼,下面我對(duì)utils.py 進(jìn)行修改

def

我們寫完一個(gè)函數(shù)后,不免要寫一些測試的代碼,而這些測試的代碼我們不希望他們?cè)趗tils.py被引入時(shí)執(zhí)行,只有當(dāng)我們主動(dòng)執(zhí)行utils.py 進(jìn)行測試才執(zhí)行這些測試代碼

掃一掃,更多專業(yè)python技術(shù)分享

總結(jié)

以上是生活随笔為你收集整理的if condition 大于_if __name__ == #x27;__main__#x27;: 究竟起什么作用,阅读本文后,其他文章不必再看...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 影音先锋人妻啪啪av资源网站 | 精品亚洲在线 | 日韩和一区二区 | 国产做爰免费视频观看 | 午夜福利一区二区三区 | 久草黄色 | 成人动作片| www色网站| 成人涩涩网 | 无码人妻一区二区三区精品视频 | 中文字幕www| 国产浮力第一页 | 亚洲精品成人av | 日韩精品视频免费 | 超碰在线播放97 | 五月天婷婷激情 | 国产情侣第一页 | 涩涩涩在线视频 | 国内精品久久久久久久久 | 中年夫妇啪啪高潮 | 丰满岳乱妇一区二区三区 | 久久久久久黄色 | 国产精品99久久久久久宅男 | 1024国产在线| 影音先锋制服丝袜 | 欧美日a | 午夜成人影片 | 久久国产柳州莫菁门 | 亚洲一区二区在线播放 | 成人精品视频在线观看 | 精品国产免费人成在线观看 | 秋霞电影一区二区 | 日韩午夜剧场 | 国产不卡视频在线播放 | 亚洲视频精品在线 | 在线日韩 | 久久久久亚洲av成人网人人网站 | 伊人情人综合网 | 女尊高h男高潮呻吟 | 国产精品高潮视频 | 双性人hdsexvideos| 国产精品久久久久久久免费看 | 精品国产一二 | 日韩精品国产一区 | 亚洲aa视频 | 人人妻人人爽人人澡人人精品 | 日韩a√ | 欧美日韩一区二区三区在线观看 | 国产三级在线 | 高h校园不许穿内裤h调教 | 诱惑av | 日韩一级免费片 | 国产成人精品免费在线观看 | 亚洲黄色网址 | 久久免费的精品国产v∧ | 草草影院地址 | 久久婷婷色综合 | 日韩无码精品一区二区 | 欧美精品久久99 | 精品一区二区三区电影 | 欧美一区二区三区爽爽爽 | www免费网站在线观看 | 成人永久视频 | 日韩黄色网页 | 美女扒开腿让男人操 | 成人毛片大全 | 黄色免费网站在线观看 | 二区视频在线观看 | 欧美日韩999 | 欧美精品一区二区三区久久久 | 依依成人综合 | 亚洲欧美综合色 | 大肉大捧一进一出好爽动态图 | www.xxxx欧美 | 粉嫩av一区二区三区免费观看 | 免费精品在线 | 嫩草在线观看 | 亚州av免费| 久久情趣视频 | 美日韩精品一区二区 | 亚洲毛片在线观看 | 久操视频网站 | 这里只有精品999 | 国产精品30p | 韩国av三级 | 国产网站黄 | 亚洲大色网 | 四虎最新站名点击进入 | 免费成人毛片 | 9i在线看片成人免费 | 午夜视频观看 | 成人3d动漫一区二区三区 | 午夜精品极品粉嫩国产尤物 | 午夜成年视频 | 天天爽天天插 | 清纯唯美第一页 | 午夜精品99 | 日韩精品视频一区二区在线观看 | 国产酒店自拍 |