Python實(shí)現(xiàn)以主程序的形式執(zhí)行模塊
前言:
這個(gè)先來(lái)創(chuàng)建一個(gè)模塊,名稱為christmastree,在該模塊中,首先定義一個(gè)全局變量,然后創(chuàng)建一個(gè)名稱為fun_christmastree()的函數(shù),最后再通過(guò)print()函數(shù)輸出一寫內(nèi)容。
代碼如下:
printree = "我是小菜雞" # 定義全局變量”小菜雞“
def fun_christmastree(): # 定義函數(shù)
"""功能: 一個(gè)夢(mèng)
:return 無(wú)返回值
"""
printree = "新星計(jì)劃,頒獎(jiǎng)...我獲獎(jiǎng)了@^。^@" # 定義局部變量
print(printree) # 輸出局部變量
# ********************函數(shù)體外*********************** #
print("\n夜深了……\n")
print("===============開(kāi)始做夢(mèng)……===============")
fun_christmastree() # 調(diào)用函數(shù)
print("===============開(kāi)始做夢(mèng)……===============")
printree = "原來(lái)是一場(chǎng)夢(mèng)," + printree + "-_-"
print(printree) # 輸出全局變量在與christmastree模塊同級(jí)的目錄下,創(chuàng)建一個(gè)名稱為main.py的文件,在該文件中,導(dǎo)入christmastree模塊,再通過(guò)print()語(yǔ)句輸出模塊中的全局變量printree的值,
代碼如下:
import christmastree
print("全局變量的值為:", christmastree.printree)運(yùn)行上面代碼,將顯示如圖所示的內(nèi)容:

從上圖所示的運(yùn)行結(jié)果可以看出,導(dǎo)入模塊后,不僅輸出了全局變量的值,而且模塊中原有的測(cè)試代碼也被執(zhí)行了。這個(gè)結(jié)果顯然不是我們想要的。那么如何只輸出全局變量的值呢?實(shí)際上,可以在模塊中,將原本直接執(zhí)行的測(cè)試代碼放在一個(gè)if語(yǔ)句中。
因此,可以將模塊christmastree的代碼修改為以下內(nèi)容:
printree = "我是小菜雞" # 定義全局變量”小菜雞“
def fun_christmastree(): # 定義函數(shù)
"""功能: 一個(gè)夢(mèng)
:return 無(wú)返回值
"""
printree = "新星計(jì)劃,頒獎(jiǎng)...我獲獎(jiǎng)了@^。^@" # 定義局部變量
print(printree) # 輸出局部變量
# ********************判斷是否以主程序的形式運(yùn)行*********************** #
if __name__ == "__main__":
print("\n夜深了……\n")
print("===============開(kāi)始做夢(mèng)……===============")
fun_christmastree() # 調(diào)用函數(shù)
print("===============夢(mèng)醒了……===============")
printree = "原來(lái)是一場(chǎng)夢(mèng)," + printree + "-_-"
print(printree) # 輸出全局變量再次執(zhí)行導(dǎo)入模塊main.py 文件,將顯示以下如圖所示的結(jié)果,從執(zhí)行結(jié)果中可以看出測(cè)試代碼并沒(méi)有被執(zhí)行。

此時(shí),如果執(zhí)行christmastree.py文件,將顯示如下圖所示的結(jié)果:

說(shuō)明: 在每個(gè)模塊的定義中都包括一個(gè)記錄模塊名稱的變量__name__,程序可以檢查該變量,以確定它們?cè)谀莻€(gè)模塊中執(zhí)行。如果一個(gè)模塊不是被導(dǎo)入到其他程序中執(zhí)行,那么它可能在解釋器的頂級(jí)模塊中執(zhí)行。頂級(jí)模塊的__name__變量的值為_(kāi)_main__。
到此這篇關(guān)于Python實(shí)現(xiàn)主程序的形式執(zhí)行模塊的文章就介紹到這了,更多相關(guān)Python執(zhí)行模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)MySQL操作的方法小結(jié)【安裝,連接,增刪改查等】
這篇文章主要介紹了Python實(shí)現(xiàn)MySQL操作的方法,結(jié)合實(shí)例形式分析了Python針對(duì)mysql的安裝,連接,增刪改查等操作實(shí)現(xiàn)方法,需要的朋友可以參考下2017-07-07
Python腳本在Appium庫(kù)上對(duì)移動(dòng)應(yīng)用實(shí)現(xiàn)自動(dòng)化測(cè)試
這篇文章主要介紹了使用Python的Appium庫(kù)對(duì)移動(dòng)應(yīng)用實(shí)現(xiàn)自動(dòng)化測(cè)試的教程,屬于Python腳本的一個(gè)自動(dòng)化應(yīng)用,需要的朋友可以參考下2015-04-04
pytorch基礎(chǔ)之損失函數(shù)與反向傳播詳解
損失函數(shù)(Loss?Function)用于衡量神經(jīng)網(wǎng)絡(luò)輸出與目標(biāo)值之間的誤差,指導(dǎo)網(wǎng)絡(luò)通過(guò)反向傳播優(yōu)化參數(shù),常見(jiàn)的損失函數(shù)包括均方誤差和交叉熵誤差,在訓(xùn)練過(guò)程中,通過(guò)不斷最小化損失函數(shù)值來(lái)調(diào)整網(wǎng)絡(luò)權(quán)重,以期達(dá)到輸出接近目標(biāo)值的效果2024-09-09
caffe的python接口deploy生成caffemodel分類新的圖片
這篇文章主要為大家介紹了caffe的python接口生成deploy文件學(xué)習(xí)以及用訓(xùn)練好的模型(caffemodel)來(lái)分類新的圖片示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
python實(shí)現(xiàn)學(xué)生管理系統(tǒng)開(kāi)發(fā)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)學(xué)生管理系統(tǒng)開(kāi)發(fā),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07
Python實(shí)現(xiàn)多態(tài)、協(xié)議和鴨子類型的代碼詳解
問(wèn)起面向?qū)ο蟮娜筇匦?,幾乎每個(gè)人都能對(duì)答如流:封裝、繼承、多態(tài)。今天我們就要來(lái)說(shuō)一說(shuō)Python實(shí)現(xiàn)多態(tài)、協(xié)議和鴨子類型,感興趣的朋友跟隨小編一起看看吧2019-05-05
python?replace?空格數(shù)據(jù)處理的實(shí)現(xiàn)
本文主要介紹了python?replace?空格數(shù)據(jù)處理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06
Python networkx包的實(shí)現(xiàn)
這篇文章主要介紹了Python networkx包的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02

