Pylint 不同意文件导入
Pylint disagrees with file import
参考 How do I import a Python script from a sibling directory?,Pylint 将在第 6 行出现 E0401
:Unable to import 错误。
if __name__ == '__main__':
if __package__ is None:
import sys
from os import path
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from components.core import my_module
else:
from ..components.core import my_module
这只是我们必须接受的东西,还是有严格的解决方案来纠正这个问题?
虽然有问题的文件是我的单元测试的一部分,对部署并不重要,但我希望一切都没有错误。
(pylint 1.6.4, Python 2.7.12)
如果您指的是导入 组件 ,那么这将不起作用,因为 pylint 不理解 sys.path 的修改。理解它们在理论上是可行的,但由于它是一个静态分析工具,它在它能做什么和应该做什么方面都有其局限性。为了帮助它,您可以尝试 运行 pylint 和 --init-hook="import sys; sys.path.append(path.dirname(path.dirname(path.abspath('your file'))))"。
参考 How do I import a Python script from a sibling directory?,Pylint 将在第 6 行出现 E0401
:Unable to import 错误。
if __name__ == '__main__':
if __package__ is None:
import sys
from os import path
sys.path.append(path.dirname(path.dirname(path.abspath(__file__))))
from components.core import my_module
else:
from ..components.core import my_module
这只是我们必须接受的东西,还是有严格的解决方案来纠正这个问题?
虽然有问题的文件是我的单元测试的一部分,对部署并不重要,但我希望一切都没有错误。
(pylint 1.6.4, Python 2.7.12)
如果您指的是导入 组件 ,那么这将不起作用,因为 pylint 不理解 sys.path 的修改。理解它们在理论上是可行的,但由于它是一个静态分析工具,它在它能做什么和应该做什么方面都有其局限性。为了帮助它,您可以尝试 运行 pylint 和 --init-hook="import sys; sys.path.append(path.dirname(path.dirname(path.abspath('your file'))))"。