中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python cookbook中如何根據字段將記錄分組

發布時間:2021-08-12 12:41:51 來源:億速云 閱讀:127 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Python cookbook中如何根據字段將記錄分組的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

問題:想根據字典或者對象實例的某個特定的字典(比如日期)來分組迭代數據

解決方案:itertools.groupby()函數在對數據進行分組時特別有用(前提是先以目標字典進行排序)

rows = [
  {'address': '5412 N CLARK', 'date': '07/01/2012'},
  {'address': '5148 N CLARK', 'date': '07/04/2012'},
  {'address': '5800 E 58TH', 'date': '07/02/2012'},
  {'address': '2122 N CLARK', 'date': '07/03/2012'},
  {'address': '5645 N RAVENSWOOD', 'date': '07/02/2012'},
  {'address': '1060 W ADDISON', 'date': '07/02/2012'},
  {'address': '4801 N BROADWAY', 'date': '07/01/2012'},
  {'address': '1039 W GRANVILLE', 'date': '07/04/2012'},
]
from operator import itemgetter
from itertools import groupby
rows.sort(key=itemgetter('date')) #首先以date字段進行排序
for date, items in groupby(rows, key=itemgetter('date')): #再以date進行分組
  print(date)
  for i in items:
    print('  ', i)
# 如果只是簡單地根據日期將數據分組到一起,放進一個大的數據結構中以允許進行隨機訪問,那么可以利用defaultdict構建一個一鍵多值的字典會更好
#Example of building a multidict
from collections import defaultdict
rows_by_date = defaultdict(list) #創建一個一鍵多值的字典,
for row in rows:
  rows_by_date[row['date']].append(row)
for r in rows_by_date['07/01/2012']:
  print(r)

運行結果:

07/01/2012
   {'address': '5412 N CLARK', 'date': '07/01/2012'}
   {'address': '4801 N BROADWAY', 'date': '07/01/2012'}
07/02/2012
   {'address': '5800 E 58TH', 'date': '07/02/2012'}
   {'address': '5645 N RAVENSWOOD', 'date': '07/02/2012'}
   {'address': '1060 W ADDISON', 'date': '07/02/2012'}
07/03/2012
   {'address': '2122 N CLARK', 'date': '07/03/2012'}
07/04/2012
   {'address': '5148 N CLARK', 'date': '07/04/2012'}
   {'address': '1039 W GRANVILLE', 'date': '07/04/2012'}
{'address': '5412 N CLARK', 'date': '07/01/2012'}
{'address': '4801 N BROADWAY', 'date': '07/01/2012'}

感謝各位的閱讀!關于“Python cookbook中如何根據字段將記錄分組”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴安盟| 建始县| 呼和浩特市| 水富县| 太仆寺旗| 乌兰浩特市| 建昌县| 鄂托克旗| 玛沁县| 阳春市| 邢台市| 海原县| 乌海市| 仪陇县| 兴山县| 江安县| 昭苏县| 伽师县| 北辰区| 伊川县| 南漳县| 淮阳县| 大方县| 开阳县| 台中县| 绥江县| 永嘉县| 象山县| 呼玛县| 唐海县| 红河县| 黔西| 正安县| 天台县| 临城县| 道孚县| 沂水县| 额尔古纳市| 清水县| 杭锦后旗| 若羌县|