最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python創(chuàng)建Excel表格并合并行列

 更新時間:2026年02月12日 09:47:45   作者:豆本-豆豆奶  
Python的openpyxl庫可以幫助我們自動化創(chuàng)建和格式化Excel文件,包括行與列的合并操作,下面我們就來看看如何使用openpyxl實現(xiàn)這些功能吧

Python的openpyxl庫可以幫助我們自動化創(chuàng)建和格式化Excel文件,包括行與列的合并操作。

本文將詳細介紹如何使用openpyxl實現(xiàn)這些功能,并提供詳細的代碼示例和說明。

一、準備工作

在開始之前,確保安裝了openpyxl庫。

pip install openpyxl

二、創(chuàng)建示例數(shù)據(jù)

我們先準備一些簡單的數(shù)據(jù),用于演示如何在Excel中進行行與列的合并。

這里創(chuàng)建一個包含分類、子分類、項目名稱以及兩個值的表格。

from openpyxl import Workbook

# 創(chuàng)建一個工作簿
workbook = Workbook()
worksheet = workbook.active

# 添加示例數(shù)據(jù)
data = [
    ['Category', 'Subcategory', 'Item', 'Value1', 'Value2'],
    ['A', 'X', 'Item1', 10, 100],
    ['A', 'Y', 'Item2', 20, 200],
    ['B', 'X', 'Item3', 30, 300],
    ['B', 'Y', 'Item4', 40, 400],
    ['C', 'X', 'Item5', 50, 500],
    ['C', 'Y', 'Item6', 60, 600]
]

# 將數(shù)據(jù)寫入工作表
for row in data:
    worksheet.append(row)

代碼說明

  • 創(chuàng)建工作簿:使用 Workbook() 創(chuàng)建一個新的工作簿,并通過 workbook.active 獲取當前活動的工作表。
  • 添加數(shù)據(jù):定義一個二維列表 data,其中包含表頭和數(shù)據(jù)行。
  • 寫入數(shù)據(jù):使用 worksheet.append(row) 將每一行數(shù)據(jù)逐行寫入工作表。

三、合并列

合并列可以將同一行中的多個單元格合并為一個單元格。這在創(chuàng)建表頭時非常有用。

# 合并第1行的第1到第3列
worksheet.merge_cells('A1:C1')

# 設置合并單元格的內(nèi)容和樣式
worksheet['A1'] = 'Category & Subcategory & Item'
worksheet['A1'].font = Font(bold=True)
worksheet['A1'].alignment = Alignment(horizontal='center', vertical='center')

代碼說明

  • 合并單元格:使用.merge_cells('A1:C1') 合并第1行的第A列到第C列。
  • 設置內(nèi)容:將合并單元格的內(nèi)容設置為 'Category & Subcategory & Item'。
  • 設置字體和對齊方式:使用 Font(bold=True) 設置字體為加粗,使用 Alignment(horizontal='center', vertical='center') 設置水平和垂直居中對齊。

四、合并行

合并行將同一列中的多個單元格合并為一個單元格。經(jīng)常用在需要突出顯示某個分類。

# 合并第2行和第3行的第1列
worksheet.merge_cells('A2:A3')

# 設置合并單元格的內(nèi)容和樣式
worksheet['A2'] = 'A'
worksheet['A2'].font = Font(bold=True)
worksheet['A2'].alignment = Alignment(horizontal='center', vertical='center')
# 合并第4行和第5行的第1列
worksheet.merge_cells('A4:A5')
worksheet['A4'] = 'B'
worksheet['A4'].font = Font(bold=True)
worksheet['A4'].alignment = Alignment(horizontal='center', vertical='center')
# 合并第6行和第7行的第1列
worksheet.merge_cells('A6:A7')
worksheet['A6'] = 'C'
worksheet['A6'].font = Font(bold=True)
worksheet['A6'].alignment = Alignment(horizontal='center', vertical='center')

代碼說明

  • 合并單元格:使用.merge_cells('A2:A3') 合并第2行和第3行的第A列。
  • 設置內(nèi)容:將合并單元格的內(nèi)容設置為 'A''B' 和 'C'。

五、同時合并行和列

有時需要同時合并行和列,以創(chuàng)建更復雜的布局。

# 同時合并第4行到第6行的第2列到第4列
worksheet.merge_cells('B4:D6')

# 設置合并單元格的內(nèi)容和樣式
worksheet['B4'] = 'Merged Rows and Columns'
worksheet['B4'].font = Font(bold=True)
worksheet['B4'].alignment = Alignment(horizontal='center', vertical='center')

代碼說明

  • 合并單元格:使用.merge_cells('B4:D6') 同時合并第4行到第6行的第B列到第D列。
  • 設置內(nèi)容:設置合并單元格的內(nèi)容。
  • 設置字體和對齊方式:使用 Font(bold=True) 設置字體為加粗,使用 Alignment(horizontal='center', vertical='center') 設置水平和垂直居中對齊。

六、動態(tài)合并行

在某些情況下,可能需要根據(jù)數(shù)據(jù)動態(tài)合并行。

# 假設我們有一個數(shù)據(jù)列表,需要根據(jù)數(shù)據(jù)動態(tài)合并行
data = ['A', 'A', 'B', 'B', 'C', 'C']

# 初始化起始行
start_row = 2

# 遍歷數(shù)據(jù),動態(tài)合并行
for i in range(len(data)):
    if i == len(data) - 1 or data[i] != data[i + 1]:
        # 當前數(shù)據(jù)與下一個數(shù)據(jù)不同,或者已經(jīng)是最后一個數(shù)據(jù)
        end_row = i + 2  # 結束行號
        worksheet.merge_cells(start_row=start_row, start_column=1, end_row=end_row, end_column=1)
        worksheet.cell(row=start_row, column=1).value = data[i]
        worksheet.cell(row=start_row, column=1).font = Font(bold=True)
        worksheet.cell(row=start_row, column=1).alignment = Alignment(horizontal='center', vertical='center')
        start_row = end_row + 1  # 更新起始行號

代碼說明

初始化起始行:設置 start_row 為 2,表示從第2行開始合并。

遍歷數(shù)據(jù):使用 for i in range(len(data)) 遍歷數(shù)據(jù)列表。

動態(tài)合并行

  • 如果當前數(shù)據(jù)與下一個數(shù)據(jù)不同,或者已經(jīng)是最后一個數(shù)據(jù),則計算結束行號 end_row。
  • 使用 .merge_cells() 合并行。
  • 設置合并單元格的內(nèi)容、字體樣式和對齊方式。
  • 更新起始行號 start_row,以便處理下一組數(shù)據(jù)。

七、保存文件

最后,我們將工作簿保存為 Excel 文件。

# 保存 Excel 文件
workbook.save('merged_cells_example.xlsx')

代碼說明

保存文件:使用 workbook.save() 將工作簿保存為文件。

通過上面的各自步驟,成功創(chuàng)建了一個包含合并行和列的Excel表。

到此這篇關于Python創(chuàng)建Excel表格并合并行列的文章就介紹到這了,更多相關Python創(chuàng)建Excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python利用小波分析進行特征提取的實例

    python利用小波分析進行特征提取的實例

    今天小編就為大家分享一篇python利用小波分析進行特征提取的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python re.match()用法相關示例

    python re.match()用法相關示例

    這篇文章主要介紹了python re.match()用法相關示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • 基于Django ORM、一對一、一對多、多對多的全面講解

    基于Django ORM、一對一、一對多、多對多的全面講解

    今天小編就為大家分享一篇基于Django ORM、一對一、一對多、多對多的全面講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python編程中內(nèi)置的NotImplemented類型的用法

    Python編程中內(nèi)置的NotImplemented類型的用法

    這篇文章主要介紹了Python編程中內(nèi)置的NotImplemented類型的用法,NotImplemented 是Python在內(nèi)置命名空間中的六個常數(shù)之一,下文更多詳細內(nèi)容需要的小伙伴可以參考一下
    2022-03-03
  • Python 利用切片從列表中取出一部分使用的方法

    Python 利用切片從列表中取出一部分使用的方法

    今天小編就為大家分享一篇Python 利用切片從列表中取出一部分使用的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python標準庫壓縮包模塊zipfile和tarfile詳解(常用標準庫)

    python標準庫壓縮包模塊zipfile和tarfile詳解(常用標準庫)

    在我們常用的系統(tǒng)windows和Linux系統(tǒng)中有很多支持的壓縮包格式,包括但不限于以下種類:rar、zip、tar,這篇文章主要介紹了python標準庫壓縮包模塊zipfile和tarfile詳解(常用標準庫),需要的朋友可以參考下
    2022-06-06
  • 淺析python 定時拆分備份 nginx 日志的方法

    淺析python 定時拆分備份 nginx 日志的方法

    本文給大家分享python 定時拆分備份 nginx 日志的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-04-04
  • Python操作excel文件與csv文件方法詳解

    Python操作excel文件與csv文件方法詳解

    這篇文章主要介紹了Python操作excel文件與csv文件方法,csv文件可以直接通過excel打開,以行列保存顯示文件,相比與excel來說它只能保存數(shù)據(jù),不能保存公式和函數(shù),然而python處理兩種文件的方式大同小異,感興趣的朋友可以參考下
    2023-12-12
  • Python面向對象程序設計中類的定義、實例化、封裝及私有變量/方法詳解

    Python面向對象程序設計中類的定義、實例化、封裝及私有變量/方法詳解

    這篇文章主要介紹了Python面向對象程序設計中類的定義、實例化、封裝及私有變量/方法,結合具體實例形式較為詳細的分析了Python面向對象程序設計中類的定義、實例化、封裝、私有變量、私有方法等相關使用技巧,需要的朋友可以參考下
    2019-02-02
  • Python如何爬取微信公眾號文章和評論(基于 Fiddler 抓包分析)

    Python如何爬取微信公眾號文章和評論(基于 Fiddler 抓包分析)

    這篇文章主要介紹了Python如何爬取微信公眾號文章和評論(基于 Fiddler 抓包分析),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-06-06

最新評論

北流市| 凤阳县| 深州市| 西吉县| 木里| 外汇| 辽源市| 临泽县| 蓬溪县| 靖安县| 贺兰县| 阳高县| 洮南市| 中西区| 乾安县| 谷城县| 濮阳县| 浠水县| 北票市| 姚安县| 雷山县| 浦东新区| 怀来县| 高陵县| 黑龙江省| 剑川县| 望奎县| 江北区| 正阳县| 囊谦县| 上林县| 全椒县| 彩票| 大安市| 巴东县| 沛县| 马龙县| 花莲市| 龙门县| 图片| 同江市|