在 spyder 变量资源管理器中最大化 f_locals 字典

Maximise the f_locals dictionary in spyder variable explorer

这是一个 Spyder IDE 特定问题

Spyder IDE 在变量资源管理器中不显示方法的局部变量,它只显示全局变量。因此,为了在变量资源管理器中获取局部变量,我使用了 python 中的 inspect 包。代码看起来类似于下面,程序代码相当长并且有数据框、文件指针、Excelwriters 和关系数据库的连接对象。

local_vars = {}

def databases():
     global local_vars
     #program codes
     local_vars = inspect.currentframe().f_locals

在变量资源管理器中双击变量,我们将能够在单独的 window 中查看变量,如图中所示

但这不适用于 local_vars 字典

我该如何解决这个问题并在单独的 window 中查看 local_vars

了解局部变量值的最佳方法是声明一个全局字典来存储值

var = {}

def method():
    var1 = 2
    var2 = 3
    global var
    var['var1'] = var1
    var['var2'] = var2

var1 = var['var1']
var2 = var['var2']

此方法允许局部变量出现在变量资源管理器中