我试图将变量名提取为字符串。我定义了两个变量CurrentField和PreviousField,并希望将这些名称提取为字符串,以便在代码中的其他地方使用。你知道吗
CurrentField = ['One', 'Two']
PreviousField = ['One0', 'Two0']
def Updatedict(varname):
callers_local_vars = inspect.currentframe().f_back.f_locals.items()
stringvar = [k for k, v in callers_local_vars if v is varname][0]
return stringvar
listofvars = [CurrentField, PreviousField]
ParameterDict = [Updatedict(keyname) for keyname in listofvars]
ParameterDict
我得到的只是一个列表,上面写着['keyname','keyname'],我要找的是['CurrentField','PreviousField']。你知道吗
如何获得所需的输出?你知道吗
提前多谢了。你知道吗
错误的是你的循环,试试这个(适用于python3.6,根据F string prefix in python giving a syntax error) 地址:
顺便说一下,函数应该是小写的,变量名也是如此,python类应该是大写的
如果您使用的是以前版本的Python,因为上述代码适用于Python3.6以后的版本,请使用以下代码:
相关问题 更多 >
编程相关推荐