a_list = []
b_list = []
c_list = []
d_dict = [{'a': 1, 'b': 2, 'c': 3}, {'a': 11, 'b': 22, 'c': 33}, {'a': 111, 'b': 222, 'c': 333}]
for i in d_dict:
a_list.append(i['a'])
b_list.append(i['b'])
c_list.append(i['c'])
res_dict = {'a': a_list, 'b': b_list, 'c': c_list}
print(res_dict) # {'a': [1, 11, 111], 'b': [2, 22, 222], 'c': [3, 33, 333]}
需要处理的 d_dict 是 django 的一个 queryset,目标是生成一个新的字典,每个 k 对应一个列表,列表里是对应 queryset 某个 k 的所有值。 实际上还有好多字段,所以这段代码在项目里面看起来很臃肿,不知道大家有没有什么优雅的方法。 注意:只用一次 for 循环,
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.