2016-11-08 108 views
0

Python 2.7从元组创建字典,用Python中的元组变量名作为键

你好。我想将一些元组变成一个字典,它在字典中使用variable_name:tuple作为key:value对。

例如,我有以下元组我想合并成一个字典。

元组:

a = (1,2) 
b = (3,4) 
c = (5,6) 
d = (7,8) 

字典:

results = {'a':a, 'b':b, 'c':c, 'd':d} 

有用来创建从自动使用元组变量名作为关键字元组和元组为值的字典一个更简单的方法? (我知道我可以写一个函数,而不是寻找这个解决方案)。我希望它会仅仅是这样的:

results = {a,b,c,d} 

,或者很少需要

results = some_module_function(a,b,c,d) 
+2

代码中字符串的变量名称需要一些hackey方法。一般来说,这是一个标志,你做错了什么。 –

+0

例如,如果在全局范围内没有其他定义,可以使用如下形式:'{k:v for k,v in globals()。items()if k.startswith('_')}' ...但你会很快遇到问题。 –

+1

为什么你首先将它们定义为单个变量而不是字典?从一开始就把它作为一本字典。 – TigerhawkT3

回答

1

到全球范围内的建议类似,您可以用当地人():一般使用

myDict = {} 
myDict.update({k:v for k,v in locals().copy().iteritems() if k[:2] != '__' and k != 'myDict'})