……现在我知道这个问题已经被问过很多次了,我也看过这些其他的线索。到目前为止,从使用sys.path.append('.')到只导入foo,都没有任何效果
我有一个python文件想要导入一个文件(在其父目录中)。你能帮我弄清楚我的子文件如何在父目录中成功地导入它的a文件吗。我正在使用Python2.7
结构如下(每个目录中也有\em>in it\uuu.py文件):
StockTracker/
__Comp/
____a.py
____SubComp/
______b.py
在b.py中,我想导入a.py:因此我尝试了以下每一种方法,但是在b.py中仍然会出现一个错误,说“没有这样的模块a”
import a
import .a
import Comp.a
import StockTracker.Comp.a
import os
import sys
sys.path.append('.')
import a
sys.path.remove('.')
应该这么做。这只适用于Python的最新版本——从2.6开始,我相信是[编辑:从2.5开始]。
每个级别(Comp和Subcomp)也必须有一个
__init__.py
文件才能运行。你说过他们会的。从这里引用http://docs.python.org/tutorial/modules.html#intra-package-references
如果Comp目录在PYTHONPATH环境变量中,那么
会有用的。
如果您使用的是Linux或OS X,并且从bash shell启动程序,那么可以通过
对于Windows,请查看以下链接:
编辑:
要以编程方式修改路径,您在最初的问题中处于正确的轨道上。只需添加父目录而不是当前目录。
相关问题 更多 >
编程相关推荐