python dict 相同key 合并value的实例

yipeiwu_com6年前Python基础

如下所示:

# #### dict中将key相同的字典合并在一个对象里
"""
a = {"a": 1, "b": 2, "c": 1}
for k, v in a.iteritems():
  tmp.setdefault(v, []).append(k)
"""
tmp = {}
objs = OnlineScoringTeacher.objects.filter(
  entry__message_ila__id=1038,
  teacher=1,
).select_related('entry')
# 常规方法
for obj in objs:
  if obj.entry.subject_id not in tmp:
    tmp.update({
      obj.entry.subject_id: []
    })
  tmp[obj.entry.subject_id].append(obj)
# 法二
for obj in objs:
  tmp.setdefault(obj.entry.subject_id, []).append(obj)

以上这篇python dict 相同key 合并value的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中函数总结之装饰器闭包详解

1、前言 函数也是一个对象,从而可以增加属性,使用句点来表示属性。 如果内部函数的定义包含了在外部函数中定义的对象的引用(外部对象可以是在外部函数之外),那么内部函数被称之为闭包。 2、...

Python微信库:itchat的用法详解

Python微信库:itchat的用法详解

在论坛上看到了用Python登录微信并实现自动签到,才了解到一个新的Python库: itchat 库文档说明链接在这:  itchat 我存个档在我网站(主要是我打...

python中字符串类型json操作的注意事项

python操作json的方法有 json.dumps——将json对象(字典)转换为字符串对象 json.loads——将字符串对象转换为json对象(字典) 如果定义json对...

python网络编程学习笔记(10):webpy框架

python网络编程学习笔记(10):webpy框架

django和webpy都是python的web开发框架。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架,Dj...

python使用yield压平嵌套字典的超简单方法

python使用yield压平嵌套字典的超简单方法

我们经常遇到各种字典套字典的数据,例如: nest_dict = { 'a': 1, 'b': { 'c': 2, 'd': 3, 'e': {'f...