首頁 >後端開發 >Python教學 >如何從 Python 中的嵌套資料夾導入模組?

如何從 Python 中的嵌套資料夾導入模組?

Linda Hamilton
Linda Hamilton原創
2024-12-23 09:10:45568瀏覽

How Can I Import a Module from a Nested Folder in Python?

從巢狀資料夾匯入模組

在 Python 中從專案內的不同資料夾匯入檔案可能具有挑戰性。讓我們探討一個場景及其解決方案。

問題:

考慮以下資料夾結構:

application
├── app
│   └── folder
│       └── file.py
└── app2
    └── some_folder
        └── some_file.py

如何匯入名為的函數func_name 從 file.py到some_file.py?

答案:

使用 from application.app.folder.file import func_name 的典型方法將無法運作。這是因為 Python 的預設導入搜尋路徑不包含子目錄。

解決方案:

要解決此限制,您可以在運行時修改Python 搜尋路徑,方法是添加在導入模組之前將所需的目錄添加到sys.path 中。以下是some_file.py 中的範例:

import sys
# Caution: path[0] is reserved for the script path or '' in REPL
sys.path.insert(1, '/path/to/application/app/folder')

import file

這將允許您從導入的模組存取函數,如下所示:

file.func_name()

注意:

此方法適用於非常特定的場景。通常,將程式碼結構化為套件是模組化和可維護性的更優選解決方案。

以上是如何從 Python 中的嵌套資料夾導入模組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn