0

我正在寻找最好的pythonic方法来做到这一点。

嵌套字典看起来像这样(主脚本):

my_dict = { test: { 
                   test_a: 'true',
                   test_b: 'true
                  }

我正在导入一个具有返回数值的函数的模块。

我正在寻找一种从模块返回的字典中附加到 my_dict 字典的方法。

即来自模块的功能:

def testResults1():
  results = 3129282
  return results

def testResults2():
  results = 33920230
  return results

def combineResults():
  Would like to combine results, and return a dictionary. Dictionary returned is:
  # Looking for best way to do this.

  test_results = { 'testresults1': 3129282, 
                   'testresults2': 33920230
                  }

然后我想将 test_results 字典附加到 my_dict。也在寻找最好的方法来做到这一点。

先感谢您!

4

3 回答 3

0
my_dict = {}

def testResults1():
  results = 3129282
  return results

def testResults2():
  results = 33920230
  return results

def combineResults():
  suite = [testResults1, testResults2]

  return dict((test.__name__, test()) for test in suite)  

my_dict.update(combineResults())
print my_dict
于 2012-06-25T00:25:50.607 回答
0
import collections
my_dict = collections.defaultdict(lambda: {})

def add_values(key, inner_dict):
    my_dict[key].update(inner_dict)

你可以在这里阅读collections.defaultdict图书馆文档。

于 2012-06-25T01:52:59.090 回答
0

你在找dict.update()方法吗?

>>> d = {'a': 1, 'b': 2}
>>> d2 = {'c': 3}
>>> d.update(d2)
>>> d
{'a': 1, 'b': 2, 'c': 3}
于 2012-06-23T19:39:52.963 回答