当前,我有一个Python项目正在处理这样的目录结构:

tests/
    corpus/
        __init__.py
        tests.py
monkey/
    corpus/
        corpus.py
setup.py


我想将tests.py(在测试/语料库中)导入corpus.py(在猴子/语料库中)。

我已经看到许多涉及使用相对导入和sys.path的解决方案,但是我也看到人们直接使用(例如)导入

import monkey.corpus


如何设置代码,以便能够像这样导入根文件夹中的任何内容?我已经看到了一些想法,可以通过配置setup.py来实现。这是真的?

谢谢你抱歉,我用另一个相对类似导入的问题来稀释这个奇妙的网站。 :)

真诚的
linux用户

最佳答案

经过一些研究,我发现我需要在内部语料库目录中添加一个空的__init__.py,并在我的.bashrc中添加一行以将其附加到PYTHONPATH。

这就是我的.bashrc现在的样子:

...
export PYTHONPATH=$PYTHONPATH:/home/username/monkey/corpus
...


刚开始,必须附加.bashrc来访问库似乎很不寻常,但是据我所知,这是编辑环境的典型方法,因此是提供对Python库的访问的适当方法。

此博客文章是查找有关PYTHONPATH信息的重要资源:http://www.stereoplex.com/blog/understanding-imports-and-pythonpath

07-28 05:48