2016-04-15 51 views
0

因此,我使用defaultdict初始化要填充的空列表字典。無法填充空列表詞典中的列表

from collections import defaultdict 
performance_deltas = defaultdict(list) 

我試圖通過附加列表來填充列表。

def add_data_to_Golden(data_set): 
    performance_deltas = defaultdict(list) 
    for build in data_set: 
     for workload in data_set[build]: 
      performance_deltas[workload].append(data_set[build][workload]) 
    return performance_deltas 

data_set是用於編譯來自各種CSV的數據的字典的詞典。期望的結果是performance_deltas是一個列表字典,每個列表獲得附加值,因此它成爲一個字典,其中工作負載作爲密鑰以及每個構建的特定工作負載值的列表。 data_set中的每個版本都具有相同的工作負載密鑰。 add_data_to_Golden僅在主內部被調用一次。

+3

你能告訴我們到底發生了什麼嗎?例如。一個精簡的代碼段,它的輸出 – Natecat

+2

這應該工作得很好。你確定「工作量」保持不變嗎? –

回答

0

如果數據是一個列表,那麼你應該使用list.extend() instead of list.append()。 extend()會將給定列表中的所有項目追加到目標列表中。

否則,我不相信多個附加同一工作量不會增加列表。

+0

在這種情況下,數據是單個值 – CoryI

+0

@CoryI,那麼您需要粘貼更多代碼,尤其是關於* workload *的代碼,以便這裏的人員可以在猜測原因之前獲取上下文。 –

+0

對不起,添加了更多的代碼。 – CoryI