通常,人们在Eclipse PyDev识别某些导入时遇到问题,但我现在却遇到了相反的问题。我有一个目录Sandbox
(我通过在其中添加一个空的__init__.py
来创建一个名称空间)。我在此目录中的模块ffc
中有一个名为ffc.py
的类,其中包含一个脚本ff.py
。
ffc.py:
class ffc(object):
def print_me(self):
print 'The class fcc has been called'
ff.py:
from Sandbox.ffc import ffc
if __name__ == "__main__":
f = ffc()
f.print_me()
此脚本适用于Eclipse PyDev(使用F9),但不适用于终端中的脚本:
从目录Sandbox
:
Sandbox david$ python ff.py
Traceback (most recent call last):
File "ff.py", line 1, in <module>
from Sandbox.ffc import ffc
ImportError: No module named Sandbox.ffc
从目录Sandbox
的父目录:
$ python Sandbox/ff.py
Traceback (most recent call last):
File "Sandbox/ff.py", line 1, in <module>
from Sandbox.ffc import ffc
ImportError: No module named Sandbox.ffc
要使此导入工作,我需要做什么?可以在不将其添加到PYTHONPATH
的情况下完成吗?