【发布时间】:2016-10-05 15:00:21
【问题描述】:
我正在尝试将字典迭代地写入文件,但在为每个字典创建唯一文件名时遇到问题。
def variable_to_value(value):
for n, v in globals().items():
if v == value:
return n
else:
return None
a = {'a': [1,2,3]}
b = {'b': [4,5,6]}
c = {'c': [7,8,9]}
for obj in [a, b, c]:
name = variable_to_value(obj)
print(name)
打印出来:
a
obj
obj
如何访问原始对象本身的名称而不是obj?
【问题讨论】:
-
我很困惑
a的打印方式 -
您说的“对象名称”是什么意思?您希望看到什么?
-
@cricket_007 可能是因为
dict.items的顺序未定义,而variable_to_value返回它找到的第一个匹配变量的名称。在我的系统上,我得到了a、b和c。
标签: python list introspection