Python:如何使用相同的键附加类型字典

时间:2016-04-27 18:36:50

标签: python dictionary

  

我有附加字典的问题,这种情况时的关键   字典相同,这是代码

sp_executesql

输出将是

EXEC

我想要输出像

import random
temp_data = {}

def data_value():
    data = []
    for x in range (1,6):
        val = random.randrange(0, 101, 2)
        data.append(val)
    return data

for x in range(1,11):
    if x == 3:
        temp_data.update({ "name" : "Cat" , "total" : data_value() })
    if x == 4:
        temp_data.update({ "name" : "Dog" , "total" : data_value()})
    if x == 5:
        temp_data.update({ "name" : "Chicken" , "total" : data_value()})        
print temp_data

下摆,我尝试过追加,但它不能,因为数据必须是数组列表。 感谢。

2 个答案:

答案 0 :(得分:0)

我认为你必须将字典放入数组列表中,并附加它。

import random
temp_data = {}
temp_list = []
def data_value():
    data = []
    for x in range (1,6):
        val = random.randrange(0, 101, 2)
        data.append(val)
    return data

for x in range(1,11):
    if x == 3:
        temp_data = { "name" : "Cat" , "total" : data_value()}  
        temp_list.append(temp_data)
    if x == 4:
        temp_data = { "name" : "Dog" , "total" : data_value()}
        temp_list.append(temp_data)     
    if x == 5:
        temp_data = { "name" : "Chicken" , "total" : data_value()}
        temp_list.append(temp_data)
print temp_list

输出将是:

[
 {'total': [88, 26, 8, 28, 54], 'name': 'Cat'},
 {'total': [16, 68, 94, 20, 16], 'name': 'Dog'},
 {'total': [88, 92, 56, 62, 46], 'name': 'Chicken'}
]

^^ CMIIW但输出仍然是数组列表

和一些我有一些技巧将数组列表转换为字符串并替换标签[{和}] 像这样

result_data =  str(temp_list)
temp_rest = result_data.replace("[{", "{")
temp_rest = temp_rest.replace("}]", "}")
print temp_rest

像这样的最终输出

 {'total': [88, 26, 8, 28, 54], 'name': 'Cat'},
 {'total': [16, 68, 94, 20, 16], 'name': 'Dog'},
 {'total': [88, 92, 56, 62, 46], 'name': 'Chicken'}

答案 1 :(得分:0)

您需要使用列表:

             <%= render 'notes/form', :date => date %>