list=(("memory","","16g"),
("memory","","32g"),
("color","","red"),
("color","","blue")) res={}
for info in list:
if(res.has_key(info[0])):
res[info[0]]["ids"].append(info[1])
res[info[0]]["values"].append(info[2])
else:
item={"ids":[info[1]],"values":[info[2]]}
res[info[0]]=item
print res
结果:
{'color': {'values': ['red', 'blue'], 'ids': ['', '']}, 'memory': {'values': ['16g', '32g'], 'ids': ['', '']}}