我在python模块中导入包时遇到问题。
我就是做这个的:
from mega.mega import Mega
if __name__ == "__main__":
m = Mega()
从Java我运行:
interpreter.execfile("api.py");
但是我仍然得到错误:
Exception in thread "main" Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named mega
在mega文件夹中,我有mega.py文件和
__init__.py
文件将此文件夹标记为包。现在我得到:
from mega.mega import Mega
SyntaxError: ("'import *' not allowed with 'from .'", ...path...
最佳答案
您需要将mega
的父目录添加到sys.path
:
import sys
import os
PATH = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, PATH)
from mega.mega import Mega
__file__
是api.py
模块的文件名(可以是相对的)。