2011-09-18 68 views
3

我想將從另一個模塊接收的字典合併爲當前模塊的全局變量字典的函數參數。任何想法如何做到這一點?python globals dictionary

模塊 - test.py

def setdict(indict): 
    somedict = dict(globals(), **indict) 

是,所得到的詞典somedict是我想要的要被設置爲當前的模塊(測試)的全局詞典。 somedict是通過合併當前模塊的全局變量(globals)和接收到的字典指令來創建的。

+3

*非常糟糕的主意。 '來自statically_known_module import *'已經夠糟糕了。 – delnan

回答

3

globals()返回當前模塊的全局字典,然後可以修改它。你的功能會喜歡:

def setdict(indict): 
    globals().update(indict) 

如果有名稱衝突,indict字典將贏。

+0

謝謝你的回答。 – Abhaya