2013-11-22 52 views
0

的名稱,如果我有一個像下面創建一個新的字符串基礎上的字典鍵

mydict = {'Key1': 'test', 'Key2': 'test', 'Key3': 'test',} 

一本字典,我想,基於字典的鍵名(不是值),創建一個名爲新字符串在他們之後。我該怎麼做呢。即我需要3個名爲Key1,Key2,Key3的字符串。

只是似乎無法解決它。如果這是一個循環,我將如何爲這些新字符串賦值。

感謝

+0

嗨。你試過什麼了? – MondKin

+1

你爲什麼需要這樣做?大多數情況下,動態創建變量名是完全沒有必要的,這是不好的做法。 – Tim

+2

如果你想給字符串賦值,爲什麼不直接執行'mydict [「Key1」] = put_value_here'? – Kevin

回答

1

mydict.keys()將返回鍵的字符串列表。然後,您可以使用任何您想要的方式。

In [4]:mydict.keys() 
Out[4]:['Key3', 'Key2', 'Key1'] 
1

您可以使用vars()

mydict = {'Key1': 'test', 'Key2': 'test', 'Key3': 'test',} 
for k in d.keys(): 
    vars()[k] = mydict[k] 

print Key1 # -> test 
+0

請注意,使用不帶參數的'vars()'與'locals()'相同:*不應該修改此字典的內容;更改可能不會影響解釋器使用的本地和自由變量的值* –