看板 Python 關於我們 聯絡資訊
各位大大 遇到一個dict 轉換的問題 一時想不到比較好的方式 如下 原先 {'s':[12,34,33], 't':[23,3,6]} 轉換後要變成 [{'s':12,'t':23}, {'s':34,'t':3}, {'s':33,'t':6}] 有沒有比較簡潔+有效率的轉換方式啊 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.220.35.20 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1487326703.A.7F4.html
infit: orig_dict = {'s':[12,34,33], 't':[23,3,6]} 02/17 19:47
MOONY135: ZIP 不過我每次都沒搞得很懂XD 02/17 19:57
mikapauli: [{i: M[i][j] for i in M} 02/17 20:03
mikapauli: for j in range(len(M.copy().popitem()[1]))] 02/17 20:03
djshen: from itertools import cycle 02/17 21:13
djshen: d = {'s':[12,34,33], 't':[23,3,6]} 02/17 21:13
djshen: [dict(zip(*i)) for i in zip(cycle([d.keys()]), 02/17 21:14
djshen: [dict(zip(*i)) for i in 02/17 21:14
djshen: zip(cycle([d.keys()]),zip(*d.values()))] 02/17 21:15