您的位置:首頁技術文章
文章詳情頁

python 復雜表格合并

瀏覽:98日期:2022-08-19 18:06:17

問題描述

[{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色1','數量':'1',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色2','數量':'20',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色3','數量':'3',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色4','數量':'4',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色5','數量':'5',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色6','數量':'6',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色7','數量':'30',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色8','數量':'8',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色9','數量':'9',},{'ID':'1','訂單號':'123456','用戶名':'路人甲','產品':'XX用品','顏色':'色10','數量':'40',},{'ID':'2','訂單號':'456789','用戶名':'路人乙','產品':'XXX用品','顏色':'紅色','數量':'100',},{'ID':'3','訂單號':'123456789','用戶名':'路人丙','產品':'XXXX用品','顏色':'金色','數量':'300',},{'ID':'3','訂單號':'987654321','用戶名':'路人丙','產品':'XXXX用品','顏色':'紫色','數量':'100',},]

需要轉換表格為:

python 復雜表格合并

python3 如何實現這種復雜的表格排列

問題解答

回答1:

這個用pandas的groupby可能實現,代碼供你參考

# coding: utf-8from __future__ import unicode_literalsimport pandas as pdlst = [ {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色1', '數量': '1', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色2', '數量': '20', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色3', '數量': '3', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色4', '數量': '4', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色5', '數量': '5', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色6', '數量': '6', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色7', '數量': '30', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色8', '數量': '8', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色9', '數量': '9', }, {'ID': '1', '訂單號': '123456', '用戶名': '路人甲', '產品': 'XX用品', '顏色': '色10', '數量': '40', }, {'ID': '2', '訂單號': '456789', '用戶名': '路人乙', '產品': 'XXX用品', '顏色': '紅色', '數量': '100', }, {'ID': '3', '訂單號': '123456789', '用戶名': '路人丙', '產品': 'XXXX用品', '顏色': '金色', '數量': '300', }, {'ID': '3', '訂單號': '987654321', '用戶名': '路人丙', '產品': 'XXXX用品', '顏色': '紫色', '數量': '100', }]df = pd.DataFrame(lst)df['數量'] = df['數量'].apply(lambda x: int(x))df['備注'] = ’’df1 = df.groupby(['ID','用戶名','產品', ’備注’,'訂單號','顏色']).sum()#導出到exceldf1.to_excel(’test.xlsx’)#輸出htmlprint df1.to_html()回答2:

先按順序排好以后再合并單元格落。

回答3:

你需要一個操作Excel的庫,比如:openpyxl。

然后查這個庫怎么填數據,怎么合并單元格。

http://openpyxl.readthedocs.i...

標簽: Python 編程
相關文章:
国产综合久久一区二区三区