【发布时间】:2021-11-29 05:24:55
【问题描述】:
使用 VSCode v1.61.0 我有一个 python 包,一个名为“tfmodules”的文件夹,里面有一个完整的模块,在 init.py 中我正在这样做:
from os.path import dirname, basename, isfile, join
import glob
modules = glob.glob(join(dirname(__file__), "*.py"))
__all__ = [ basename(f)[:-3] for f in modules if isfile(f) and not f.endswith('__init__.py')]
在我的代码中我是这样导入的:
from tfmodules import *
然后我用这样的方式调用模块:
def write(aci_topology_model, provider_source, provider_version):
with open('fabric-bringup.tf', 'w') as f:
x = fabricbringup.tf_write_fabric_bringup(aci_topology_model, provider_source, provider_version)
f.write(x)
fabricbringup 是包中的一个模块。 代码运行良好,但 Pylance 抛出 36 个 reportUndefinedVariable 实例,每个调用的模块一个。
具体错误(来自模块之一)是:
"fabricbringup" is not defined Pylance(reportUndefinedVariable)
我已经为 vs 代码中的 venv 选择了正确的解释器,并尝试将其添加到 settings.json 文件中:
"python.analysis.extraPaths": ["tfmodules", "/home/aj/projects/python/dcnet-aci-lld-convert/tfmodules"]
但我仍然从 Pylance 得到错误。我究竟做错了什么?谢谢!
【问题讨论】:
-
请在您的问题中提供完整的错误信息。
标签: python visual-studio-code pylance