[英]What is best practice for importing internal modules to another subdirectory in python?
我目前有一個結構如下的項目文件夾
Project/
main.py
.gitignore
.env
requirements.txt
reports/
report1.py
report2.py
utils/
__init__.py
support_functions.py
對於這個程序,我不是想運行一個 main 函數。 我有幾個每周/每月運行一次的報告,並且直接從其文件中運行它們。 我在從 utils 模塊導入函數時遇到了很多麻煩 - 但是,我確實找到了堆棧溢出的解決方法,它本質上是將文件夾添加到路徑
import sys
sys.path.append('/Project/utils')
import support_functions
但是,我不喜歡這種解決方法,因為它使用絕對路徑,並且在我切換計算機/操作系統/環境時不起作用。 所以我的主要問題是在大型項目中如何處理? 即使我使用“正確”結構並運行主要功能,我也遇到了其他幾個我想這樣做的場景。
我終於找到了答案。
解決方案:編輯您的 settings.json
"terminal.integrated.env.osx": {"PYTHONPATH": "${workspaceFolder}"}
注意 - osx 在這些操作系統上需要更改為“linux”或“windows”。
可以在“使用 PYTHONPATH 變量”部分下找到有關問題和解決方案的文檔。
有其他解決方案可以通過將 PYTHONPATH 設置在 .env 中,然后在 settings.json 中指向它來更改 PYTHONPATH,但是,它們都不適合我。 解決方案最終是讓 VScode 將 PYTHONPPATH 指向當前工作目錄,這是在 Pycharm 中自動完成的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.