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实现检测文件MD5值的方法示例

本文实例讲述了Python实现检测文件MD5值的方法。分享给大家供大家参考,具体如下: 前面介绍过Python计算文件md5值的方法,这里分析一下Python检测文件MD5值的另一种实现...

Python中的yield浅析

在介绍yield前有必要先说明下Python中的迭代器(iterator)和生成器(constructor)。 一、迭代器(iterator) 在Python中,for循环可以用于Pyt...

python 实现读取一个excel多个sheet表并合并的方法

如下所示: import xlrd import pandas as pd from pandas import DataFrame DATA_DIR = 'E:/'...

Python Pandas 转换unix时间戳方式

Python Pandas 转换unix时间戳方式

使用pandas自带的pd.to_datetime把 unix 时间戳转为时间时默认是转换为 GMT标准时间   北京时间比这个时间还要加 8个小时, 使用pyth...

Python中的TCP socket写法示例

Python中的TCP socket写法示例

前言 本文主要介绍了关于Python中TCP socket的写法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、 服务器server的写法: 1. 创建 sock...