簡體   English   中英

如何在 Python 中使用 importlib 從父目錄導入?

[英]How to import from parent directory using importlib in Python?

我有一個這樣的目錄:

Project Folder
├─main.py
├─Utils
│  └─util1.py
└─Plugins
   └─plugin1.py

如何直接從 plugin1.py 導入 util1.py? 我嘗試使用importlib.import_module('Utils.util1', '..') ,但這沒有用。 from ..Utils import util1from .. import Utils.util1也不起作用( ValueError: attempted relative import beyond top-level package

請注意:它不是我的目錄中的實用程序和插件,為了方便起見,我只是在此處將它們命名為這樣。

# From http://stackoverflow.com/a/11158224

# Solution A - If the script importing the module is in a package
from .. import mymodule

# Solution B - If the script importing the module is not in a package
import os,sys,inspect
current_dir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
parent_dir = os.path.dirname(current_dir)
sys.path.insert(0, parent_dir) 
import mymodule

你可以這樣做:
未測試

import os, sys
currentDir = os.getcwd()
os.chdir('..') # .. to go back one dir | you can do "../aFolderYouWant"
sys.path.insert(0, os.getcwd())
import mymodule
os.chdir(currentDir) # to go back to your home directory

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM