您好,登錄后才能下訂單哦!
今天小編給大家分享一下Python如何實現以主程序的形式執行模塊的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
前言:
這個先來創建一個模塊,名稱為christmastree,在該模塊中,首先定義一個全局變量,然后創建一個名稱為fun_christmastree()的函數,最后再通過print()函數輸出一寫內容。
代碼如下:
printree = "我是小菜雞" # 定義全局變量”小菜雞“ def fun_christmastree(): # 定義函數 """功能: 一個夢 :return 無返回值 """ printree = "新星計劃,頒獎...我獲獎了@^。^@" # 定義局部變量 print(printree) # 輸出局部變量 # ********************函數體外*********************** # print("\n夜深了……\n") print("===============開始做夢……===============") fun_christmastree() # 調用函數 print("===============開始做夢……===============") printree = "原來是一場夢," + printree + "-_-" print(printree) # 輸出全局變量
在與christmastree模塊同級的目錄下,創建一個名稱為main.py的文件,在該文件中,導入christmastree模塊,再通過print()語句輸出模塊中的全局變量printree的值,
代碼如下:
import christmastree print("全局變量的值為:", christmastree.printree)
運行上面代碼,將顯示如圖所示的內容:
從上圖所示的運行結果可以看出,導入模塊后,不僅輸出了全局變量的值,而且模塊中原有的測試代碼也被執行了。這個結果顯然不是我們想要的。那么如何只輸出全局變量的值呢?實際上,可以在模塊中,將原本直接執行的測試代碼放在一個if語句中。
因此,可以將模塊christmastree的代碼修改為以下內容:
printree = "我是小菜雞" # 定義全局變量”小菜雞“ def fun_christmastree(): # 定義函數 """功能: 一個夢 :return 無返回值 """ printree = "新星計劃,頒獎...我獲獎了@^。^@" # 定義局部變量 print(printree) # 輸出局部變量 # ********************判斷是否以主程序的形式運行*********************** # if __name__ == "__main__": print("\n夜深了……\n") print("===============開始做夢……===============") fun_christmastree() # 調用函數 print("===============夢醒了……===============") printree = "原來是一場夢," + printree + "-_-" print(printree) # 輸出全局變量
再次執行導入模塊main.py 文件,將顯示以下如圖所示的結果,從執行結果中可以看出測試代碼并沒有被執行。
此時,如果執行christmastree.py文件,將顯示如下圖所示的結果:
說明: 在每個模塊的定義中都包括一個記錄模塊名稱的變量__name__,程序可以檢查該變量,以確定它們在那個模塊中執行。如果一個模塊不是被導入到其他程序中執行,那么它可能在解釋器的頂級模塊中執行。頂級模塊的__name__變量的值為__main__。
以上就是“Python如何實現以主程序的形式執行模塊”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。