【发布时间】:2017-08-01 18:22:24
【问题描述】:
【问题讨论】:
标签: python visual-studio-code pylint
【问题讨论】:
标签: python visual-studio-code pylint
Pylint 是一个静态检查器,但 NumPy 会动态导入子模块,例如 random。
这是numpy/__init__.py的相关部分:
from . import random
# skipped lines
__all__.extend(['linalg', 'fft', 'random', 'ctypeslib', 'ma'])
在numpy/random.__init__.py 你可以找到这行:
from .info import __doc__, __all__
进一步关注此轨道numpy/random/info.py 包含:
__all__ = [
# skipped lines
'normal',
# skipped lines
]
__init__.py 在首次导入 numpy 期间执行。
列表__all__ 包含numpy 公开的名称。
此列表在运行时扩展,因此 PyLint 无法真正静态检查。
【讨论】: