python通過某個欄位將記錄分組

2021-08-10 00:11:56 字數 937 閱讀 4546

通過某個欄位將記錄分組

from operator import itemgetter

from itertools import groupby

rows = [,,

,,,,

,,

]#operator模組提供的itemgetter函式用於獲取物件的哪些維的資料

rows.sort(key=itemgetter('date'))

fordate,items

in groupby(rows, key=itemgetter('date')):

print(date)

for i in

items:

print(' ', i)

結果為

07/01/2012

07/02/2012

07/03/2012

07/04/2012

如果你僅僅只是想根據 date 欄位將資料分組到乙個大的資料結構中去,並且允許隨機訪問, 那麼你最好使用 defaultdict() 來構建乙個多值字典

from collections import defaultdict

rows = [,,

,,,,

,,

]#defaultdict(list)函式表示預設的key對應的values是列表

rows_by_date = defaultdict(list)

for row in rows:

for r in rows_by_date['07/01/2012']:

print(r)

結果如下:

例如,遍歷字典的key和value的值,可以使用items()函式。

00015 通過某個欄位將記錄分組

字典或者例項的序列,想根據某個特定的字段比如 date 來分組迭代訪問,類似sql的 group by語句 模組 itertools collections 函式 groupby defaultdict user bin env python coding utf 8 from operator i...

oracle拆分某個字段

表 uf wzlb 物資類別 表 uf wzzl 物資種類 表 uf wzlb wzzl 物資類別和物資種類關聯表,物資類別與物資種類為一對多關係 如,物資類別編碼為 wzlb 201805100004 該物資類別繫結了多個物資種類,繫結的物資種類編碼為 wzzl 201805100044,wzzl...

sql 查詢某個字段最長的記錄

sql 查詢文字欄位中值的長度最長的記錄 一 函式 1 sql server len 函式返回文字欄位中值的長度。select len column name from table name 2 mysql length 函式返回文字欄位中值的長度。select length column name...