如何从不同文件夹导入模块?我有以下
cgi-bin
| py
|
__init.py__
http
|
__init.py__
HttpFormParser.py
xml
|
__init.py__
XmlDocumentCreator.py
我想在HttpFormParser.py中导入XmlDocumentCreator。怎么做?
我在做
import py.xml.XmlDocumentCreator
在HttpFormParser.py中并抛出以下错误。
/HttpFormParser.py", line 5, in <module>
import py.xml.XmlDocumentCreator
ImportError: No module named py.xml.XmlDocumentCreator
答案 0 :(得分:1)
按照sys.argv[0]
的说法,计算出你正在执行的目录。在这种情况下,您希望获取cgi-bin
目录,因为它包含py
:
import os
import sys
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__),
os.pardir, os.pardir)))
import py.xml.XmlDocumentCreator
P.S。如果您正在使用WSGI,则不需要在cgi-bin
目录中使用您的Python代码,如果.htaccess
(或等效)设置错误,可以下载该代码。
答案 1 :(得分:0)
你有没有尝试过:
from ..xml import XmlDocumentCreator
一般情况下,我建议您阅读模块搜索路径和包内参考 @ http://docs.python.org/tutorial/modules.html
部分