首頁 > 後端開發 > Python教學 > 在 Python 中導入模組時如何防止執行不需要的程式碼?

在 Python 中導入模組時如何防止執行不需要的程式碼?

Patricia Arquette
發布: 2024-12-13 18:34:10
原創
987 人瀏覽過

How Can I Prevent Unwanted Code Execution When Importing Modules in Python?

Python 的模組執行之謎

在 Python 程式設計中,匯入模組時可能會遇到意外行為。考慮一個提供兩種操作模式的程式:透過main.py的使用者互動模式和透過batch.py​​的批次模式。

當batch.py​​導入main.py但意外觸發其執行時,就會出現問題代碼。會出現這種情況是因為 Python 將 class 和 def 之類的關鍵字視為可執行語句而不是宣告。

解決方案:條件執行

為了防止這種不必要的執行,Python 提供了一個已知的解決方案作為條件執行。它涉及封裝僅在直接呼叫模組時運行的程式碼,而不是導入的程式碼。

以下程式碼片段示範了這種方法:

# Code that can be executed both when called directly and imported
...

# Code to be executed only when called directly
def main():
    ...

# Conditional execution to only run 'main' when the module is called directly
if __name__ == "__main__":
    main()
登入後複製

在此模式中,放置在模組之外的任何程式碼無論模組是導入還是直接調用,if __name__ == " __main__" 區塊都會被執行。此區塊中的程式碼僅在直接呼叫模組時才會執行,有效防止導入期間不必要的執行。

以上是在 Python 中導入模組時如何防止執行不需要的程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板