我在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模块的文件名(可以是相对的)。

10-08 15:39