Pycharm 2016.2.3、Mac OS X 10.11.1、Python 3.5(自制)
我有这个文件夹结构
project
/somepackage
/subpackage
__init__.py
bar.py
__init__.py
foo.py
foo.py:
import somepackage.subpackage.bar
print("foo")
bar.py:
print("bar")
所以我的预期产出是
bar
foo
从PyCharm跑出来的时候效果很好。然而,当我从我的终端运行它时,我得到了一个重要的恐惧:
$ pwd
$ /home/project (not the actual path; just omitting some personal stuff)
$ python3.5 somepackage/foo.py
File "foo.py", line 1, in <module>
import somepackage.subpackage.bar
ImportError: No module named 'somepackage'
我发现了this question,这也是一个问题。但是,没有一个建议的解决方案对我有效,因为我确实使用了与PyCharm相同的Python解释器,而且我当前位于包含somepackage/
文件夹的文件夹中。
有没有人对如何解决这个问题有其他的建议?谢谢你的好意!
您像脚本一样运行foo.py,但实际上像模块一样使用它。因此,正确的解决方案是将其作为模块运行:
对于记录,另一种选择是编辑路径,如下所示:
(或者你可以把绝对目录放在那里,当然你应该附加任何已经在PYTHONPATH中的其他目录)这更接近PyCharm所做的,但在哲学上不太正确。
相关问题 更多 >
编程相关推荐