在Python中从`foo.py`导入和`foo / __ init __。py`导入之间有什么区别

时间:2019-01-08 22:38:01

标签: python import pylint

如果foo.pyfoo/__init__.py相同且不包含相对导入。并且如果您导入以下内容:

from foo import X #  (or import foo)

我认为没有区别。当文件变得太大并且想将其分解成一个包和多个文件时,我做了很多次。但这并不是真的,this commit未能通过tests for pylint来证明。

pylint/utils.py → pylint/utils/__init__.py
File renamed without changes.

这会使3个功能测试失败(logging_format_interpolationdeprecated_methods_py3redundant_unittest_assert)。在重新设置基准之后以及每次master分支的提交工作正常时,这都是真正的重新基准。在启动Tox时,我还会使用--recreate选项。

包含这些检查器的stdlib.py文件似乎甚至没有从pylint.utils导入某些东西(它使用pylint.checker.utils),所以我不知道为什么它会损坏,但是确实会损坏。 / p>

此文件包含以下划线(_function_name)开头的某些功能,可能是问题所在吗?

1 个答案:

答案 0 :(得分:0)

确实没有区别。 pylint master分支很长时间没有通过测试套件,请参见this comment