作者:
ek0519 (new life)
2016-08-05 17:08:41原始碼
subclass_data = {}
transaction_info_subclass = {}
cart_subclass_temp = {}
cart_items = {
147: [
{'object_id': 8022, 'categorysub': 147, },
{'object_id': 8021, 'categorysub': 147, }
],
148: [ {'object_id': 8023, 'categorysub': 148, } ]
}
cart_subclass =[147, 148]
for subclass in cart_subclass:
cart_subclass_temp['items'] = cart_items[subclass]
transaction_info_subclass = cart_subclass_temp
print (transaction_info_subclass) # 1
subclass_data[subclass] = transaction_info_subclass # 新增字典
print (subclass_data) # 2
輸出為
第一個迴圈的 1
{'items': [{'categorysub': 147, 'object_id': 8022},
{'categorysub': 147, 'object_id': 8021}]}
第一個迴圈的 2
{147: {'items': [{'categorysub': 147, 'object_id': 8022},
{'categorysub': 147, 'object_id': 8021}]}}
第二個迴圈的 1
{'items': [{'categorysub': 148, 'object_id': 8023}]}
第二個迴圈的 2
{147: {'items': [{'categorysub': 148, 'object_id': 8023}]},
148: {'items': [{'categorysub': 148, 'object_id': 8023}]}}
不知道為何 第二迴圈 # 新增字典的時候 會把裡面原有的 key 147 對應的 'items'
一起改成 key 148 對應的 'items'(value)
之前也用過dict update的方式也是一樣,還請教一下有人有其他解法沒有