2014-01-18 106 views
1

我想知道如何将python脚本从不同目录(在本例中为父目录)导入到我的主脚本中。从不同目录中导入脚本

我用下面的代码的父目录追加到sys.path的列表,然后导入脚本(main.py),才能使用此功能文件中:

import sys, os 
sys.path.append(os.path.abspath("../")) 
from main import draw_text_on_screen 

然而,当我从main.py脚本调用此函数时,出现以下错误:

ImportError: No module named 'main.py'; main is not a package 

任何人都可以帮助我解决此问题吗?或者,还有另一种导入模块的方式,可以指定完整的目录路径吗?

谢谢你们。

回答

1

当我创造一个文件夹parent与Pythonscript parent.pyparent称为child由另一种文件夹,包含child.py我能够导入(和使用)的parent.py所有功能在child.py用下面的代码:

child.py

import sys, os 
sys.path.append(os.path.abspath("../")) 

from parent import myFunction 

myFunction() 

parent.py

def myFunction(): 
    print('Hi there') 

控制台输出:

> C:\Users\Rick\Desktop\parent\child>child.py 
Hi there