天天看點

Excel 文檔的寫入

1. 向單元格寫入資料

1.1 一個單元格的寫入

向工作表的一個單元格寫入内容的代碼如下:

import openpyxl

wb = openpyxl.Workbook()
ws = wb['Sheet']
ws['A1'].value = 'Hello World!'
wb.save('write_excel.xlsx')      

上面代碼中,首先導入第三方庫 openpyxl。其次,擷取工作簿中的工作表。最後,向單元格 A1 寫入 ​

​Hello World!​

​ 并儲存文檔為 ​

​write_excel.xlsx​

​。這樣,我們便向文檔 ​

​write_excel.xlsx​

​ 的 Sheet 工作表的 A1 單元格寫入了 ​

​Hello World!​

​。

1.2 多個單元格的寫入

上面一次寫入一個單元格,我們可以使用循環一次寫入多個單元格。代碼如下:

import openpyxl

wb = openpyxl.load_workbook("write_excel.xlsx")
ws = wb['Sheet']

for i in range(1, 10):
    ws.cell(row=2, column=i).value = i
    
wb.save('write_excel.xlsx')      

上面的代碼向工作表第二行的前九個單元格分别寫入了1,2,3,4,5,6,7,8,9。

2. 插入、删除行和列

文檔 example.xlsx 的内容如下圖所示:

Excel 文檔的寫入

2.1 在指定位置插入一行

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.insert_rows(idx=1)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第一行的位置插入一行後進行儲存。插入之後的文檔如下圖所示:

Excel 文檔的寫入

2.2 在指定位置插入多行

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.insert_rows(idx=3, amount=3)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第三行的位置插入三行後進行儲存。插入之後的文檔如下圖所示:

Excel 文檔的寫入

2.3 在指定位置删除一行

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.delete_rows(idx=1)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第一行的位置删除一行後進行儲存。删除之後的文檔如下圖所示:

Excel 文檔的寫入

2.4 在指定位置删除多行

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.delete_rows(idx=2, amount=3)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第二行的位置删除三行後進行儲存。删除之後的文檔如下圖所示:

Excel 文檔的寫入

2.5 在指定位置插入一列

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.insert_cols(idx=1)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來在第一列插入一列并進行儲存。删除之後的文檔如下圖所示:

Excel 文檔的寫入

2.6 在指定位置插入多列

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.insert_cols(idx=3, amount=3)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第三列的位置插入三列後進行儲存。插入之後的文檔如下圖所示:

Excel 文檔的寫入

2.7 在指定位置删除多列

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.delete_cols(idx=3, amount=3)
wb.save('example.xlsx')      

上面代碼中,首先讀取文檔 example.xlsx,然後擷取活躍的工作表。接下來,在第三列的位置删除三列後進行儲存。删除之後的文檔如下圖所示:

2.8 在指定位置删除一列

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
ws = wb.active

ws.delete_cols(idx=1)
wb.save('example.xlsx')      

繼續閱讀