2016-11-08 106 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'})