【问题标题】:pylint import and dynamic path modificationpylint 导入和动态路径修改
【发布时间】:2011-07-20 16:03:36
【问题描述】:

我的项目通常是这样的结构:

projectname/
    __init__.py
    python/
        mymodule.py
    other_stuff/
    more_stuff/

其中__init__.py 包含以下代码

import os
mypath = os.path.dirname(os.path.realpath(os.path.abspath(__file__)))
__path__ = [mypath, mypath+"/python"]

这会在导入时“跳过”python 目录,以允许使用from projectname import mymodule 而非from projectname.python import mymodule 形式的python 代码。

这似乎破坏了 pylint,尽管 $PYTHONPATH 设置正确,但无法导入项目中的任何模块。在projectname 中创建软链接projectname -> python 可以解决问题,但不是合适的解决方案。

关于如何在不改变目录结构的情况下解决此问题的任何建议?

【问题讨论】:

    标签: python pydev pythonpath pylint


    【解决方案1】:

    我觉得你有点卡住了。 Pylint 不会处理您的 __init__.py 文件,因此除非您能找到另一种方法将该信息输入 pylint,否则我认为它不会起作用。祝你好运。

    【讨论】:

    • 感谢您的回答-我相信您是正确的,并且没有很好的方法可以解决此问题。最后,我只是在 Makefile 规则中解决了它。
    • 你能详细说明你是如何解决这个问题的吗?我遇到了同样的问题。谢谢。
    • @Chiggs 如果你找到了解决方案,我鼓励你share your knowledge, Q&A-style 帮助others who are trying to solve similar issues
    • @Srikanth 我使用了问题中描述的软链接黑客。这有点脏,但在 pylint 的 makefile 规则中,我创建了所有软链接,然后再次删除它们。
    猜你喜欢
    • 1970-01-01
    • 2019-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多