我经常需要打印变量用于调试目的,我发现知道这些变量是什么有很大帮助。所以我想要一个具有以下功能的函数:
from __future__ import print_function
def get_variable_name(my_variable):
... ?
def print_with_variable_name(my_variable):
print (get_variable_name(my_variable), ': ', my_variable)
a = 30
print_with_variable_name(a);
预期产出:
a: 30
我找到了一些问题的部分解决方案,我只能在函数由名称a定义的函数中执行此操作,否则将打印:
my_variable: 30
是否有任何优雅的解决方案,我可以用这个新的打印功能编写一个模块并将其导入到我喜欢的任何地方?
答案 0 :(得分:1)
尝试使用字典:
dict((name,eval(name)) for name in ['list', 'of', 'vars'])
答案 1 :(得分:0)
我建议使用字典,如果它适合您的程序如何工作(许多不同的变量)。字典将允许您获取值和值名称。