【发布时间】:2022-12-03 06:38:47
【问题描述】:
是否可以在不运行代码的情况下确定Python中变量的源模块?
我的 Python 代码中有一个变量,我想知道它来自哪个模块。但是,我不想运行代码来找出答案。有没有办法静态分析代码并确定变量的来源模块?
我试过使用pylint 和pyflakes 之类的工具,但它们似乎没有提供这些信息。有没有办法做到这一点,或者如果不运行代码就不可能?我觉得是可以的,因为好像VSCode Python IntelliSense可以通过静态分析的方式判断出不同变量的类型和信息。不幸的是,我不确定 IntelliSense 是如何工作的。
这是一个更具体的例子。
import module1
from module2 import item2
import module3 as my_module3
from module4 import item4 as my_item4
from module5 import *
var1 = module1.func_1
var2 = item2
var3 = my_module3.func_3
var4 = my_item4
var5 = func_5
如何知道var1...var5分别来自哪些模块?
【问题讨论】:
标签: python