四個Python操作Excel的常用腳本分享
一、安裝openpyxl模塊
Python操作excel主要用到了openpyxl模塊,按win+R打開cmd,在里面輸入
pip3 install openpyxl
即可成功安裝openpyxl模塊。
二、加載庫
接著加載庫,并設(shè)置數(shù)據(jù)存放的文件夾。
import os import random import openpyxl import numpy as np import pandas as pd from openpyxl.drawing.image import Image from openpyxl.worksheet.table import Table,TableStyleInfo from openpyxl.styles import Border, Side, PatternFill, Font, GradientFill, Alignment from openpyxl.utils import get_column_letter,column_index_from_string #導(dǎo)入庫 os.chdir(r'G:/python/13_python處理excel/') #設(shè)置文件存放的地址
三、創(chuàng)建文件和工作表
接著創(chuàng)建文件和工作表,代碼如下:
wb = openpyxl.Workbook()
#創(chuàng)建工作表
wb_sht1 = wb.create_sheet(title='插入數(shù)據(jù)', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
wb.save('cs.xlsx')
wb.close()
得到結(jié)果:

也可以用函數(shù)刪除工作表,代碼如下:
wb.remove(wb_sht1)??
四、在工作表指定單元格寫數(shù)據(jù)
接著在工作表中寫數(shù)據(jù),代碼如下:
#在每一行寫入行號
wb = openpyxl.Workbook()
#創(chuàng)建工作表
wb_sht1 = wb.create_sheet(title='插入數(shù)據(jù)', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
for r_index in range(1, 10):
for c_index in range(1, 10):
wb_sht1.cell(row=r_index, column=c_index, value=r_index)
兩層for循環(huán)控制在相應(yīng)位置寫下行號,得到結(jié)果:

五、設(shè)置單元格的顏色字體
接著在A1單元格測試設(shè)置字體大小、顏色、邊框線條,代碼如下:
thin = Side(border_style="thin", color="FF0000")
#紅色細(xì)線條
double = Side(border_style="double", color="000000")
#黑色粗線條
wb_sht1_A1 = wb_sht1["A1"]
#選擇要調(diào)整顏色的單元格
wb_sht1_A1.font = Font(b=True, color='008000')
#設(shè)置單元格字體顏色
wb_sht1_A1.alignment = Alignment(horizontal='left', vertical='center')
#設(shè)置單元格排列方式
wb_sht1_A1.border = Border(top=double, left=thin, right=thin, bottom=double)
#設(shè)置邊框線條
wb_sht1_A1.fill = PatternFill("solid", fgColor="0000FF")
#設(shè)置單元格填充顏色
得到結(jié)果:

六、在excel中寫入表格
最后在excel中寫入表格,代碼如下:
os.chdir(r'G:/python/13_python處理excel/')
#設(shè)置文件存放的地址
wb = openpyxl.Workbook()
#創(chuàng)建工作表
wb_sht1 = wb.create_sheet(title='插入數(shù)據(jù)', index=0)
wb_sht2 = wb.create_sheet(title='插入表格', index=0)
date = pd.DataFrame(np.random.randint(20, 50, (4, 4)))
col_name = ['col1', 'col2', 'col3', 'col4']
date.columns = col_name
wb_sht2.append(col_name)
for row in range(date.shape[0]):
wb_sht2.append(list(date.iloc[row, ]))
table = Table(id=1, displayName='excel_table3', ref='A1:D4')
wb_sht2.add_table(table)
wb.save('cs1.xlsx')
wb.close()得到結(jié)果:

至此,用Python中的openpyxl模塊操作excel代碼已講解完畢。感興趣的小伙伴可以更深入地測試這些代碼。本文只給出了基礎(chǔ)代碼,更多特殊需求,可以在此代碼的基礎(chǔ)上進(jìn)行調(diào)整。如果想在excel中設(shè)置好格式,只把數(shù)據(jù)粘貼到文檔中,還可以調(diào)用xlwings模塊進(jìn)行excel操作。
到此這篇關(guān)于四個Python操作Excel的常用腳本分享的文章就介紹到這了,更多相關(guān)Python操作Excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python繪制y關(guān)于x的線性回歸線性方程圖像實例
這篇文章主要為大家介紹了python繪制y關(guān)于x的線性回歸線性方程圖像實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
Django多數(shù)據(jù)庫配置及逆向生成model教程
這篇文章主要介紹了Django多數(shù)據(jù)庫配置及逆向生成model教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Pandas中數(shù)據(jù)表合并的幾種實現(xiàn)方法
Pandas提供了merge()、concat()和join()三種方法來合并數(shù)據(jù)表,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
Django利用Channels+websocket開發(fā)聊天室完整案例
Channels是Django團(tuán)隊研發(fā)的一個給Django提供websocket支持的框架,使用它我們可以輕松開發(fā)需要長鏈接的實時通訊應(yīng)用,下面這篇文章主要給大家介紹了關(guān)于Django利用Channels+websocket開發(fā)聊天室的相關(guān)資料,需要的朋友可以參考下2023-06-06
python利用ddddocr包ocr識別圖片碼的實現(xiàn)
ddddocr是一個輕量級的OCR庫,用于識別圖片中的文字和驗證碼,本文主要介紹了python利用ddddocr包ocr識別圖片碼的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2025-01-01

