在我們做平常工作中都會遇到操作excel,那么今天寫一篇,如何通過python操作excel,當然python操作excel的庫有很多,比如pandas,xlwt/xlrd,openpyxl等,每個庫都有不同的區別,具體的區別,大家一起研究下哈。
xlrd模塊
xlrd是對於Excel進行讀取,xlrd 操作的是xls/xlxs格式的excel
安裝
xlrd是python的第3方庫,需要通過pip進行安裝
pip install xlrd

讀取excel數據


1、導入xlrd莫款
2、打開Excel完成實例化
3、通過下標獲取對應的表(可以通過表名獲取)
4、通過列,行或者坐標獲取表格的數據
# coding:utf-8 import xlrd # excel路徑 excle_path = r'E:\123.xlsx' # 打開excel讀取文件 data = xlrd.open_workbook(excle_path) # 根據sheet下標選擇讀取內容 sheet = data.sheet_by_index(1) # 獲取到表的總行數 nrows = sheet.nrows for i in range(nrows): print(sheet.row_values(i))

上面的是通過表的下標來選擇讀取的,當我們知道表的名稱的時候,也可以通過表的名稱進行讀取
# coding:utf-8 import xlrd # excel路徑 excle_path = r'E:\123.xlsx' # 打開excel讀取文件 data = xlrd.open_workbook(excle_path) # 根據sheet下標選擇讀取內容 sheet = data.sheet_by_index(1) # 獲取全部表的名稱 sheet_names = data.sheet_names() print('全部表名稱') print(sheet_names) # 根據sheet名稱選擇讀取內容 sheet1 = data.sheet_by_name('姓名') # 獲取到表的總行數 nrows1 = sheet.nrows print('姓名表內容:') for j in range(nrows1): print(sheet1.row_values(j))

上面通過下標和名稱都成功讀取出來了數據,我們通過坐標來讀取數據
# coding:utf-8 import xlrd # excel路徑 excle_path = r'E:\123.xlsx' # 打開excel讀取文件 data = xlrd.open_workbook(excle_path) # 根據sheet下標選擇讀取內容 sheet = data.sheet_by_index(1) # 通過坐標讀取 A1 = sheet.cell_value(1,0) print(A1)
xlrd中的其他用法
1、讀取sheet的行數、列數
# excel路徑 excle_path = r'E:\123.xlsx' # 打開excel讀取文件 data = xlrd.open_workbook(excle_path) # 讀取sheet行數據,通過下標獲取 a = sheet.row_values(1) # 讀取sheet列數據,通過下標獲取 b = sheet.col_values(1)
2、獲取sheet的行數,列數
# coding:utf-8 import xlrd # excel路徑 excle_path = r'E:\123.xlsx' # 打開excel讀取文件 data = xlrd.open_workbook(excle_path) # 根據sheet下標選擇讀取內容 sheet = data.sheet_by_index(1) print('sheet名稱:{}\nsheet列數: {}\nsheet行數: {}'.format(sheet.name, sheet.ncols, sheet.nrows))
xlwt模塊
xlwt是對於Excel進行讀取,xlwt操作的是xls格式的excel
安裝
xlwt屬於python的第3方庫,需要通過pip進行安裝
pip install xlwt

寫入Excel數據
1、首先導入xlwt第3方庫
2、創建一個workbook模塊,相當於創建一個xlwt文件
3、通過add_sheet創建一個表格
4、使用write函數進行對表完成寫的操作
5、把寫完的數據導入到Excel中
# coding:utf-8 import xlwt # excel路徑 excle_path = r'E:\1234.xls' # 創建一個Workbook模塊 data = xlwt.Workbook(encoding='utf-8') # 創建一個表格,cell_overwrite_ok=True 為不覆蓋表,默認為False sheet = data.add_sheet('test123',cell_overwrite_ok=True) # 寫入坐標為(0,0)內容為職位 sheet.write(0,0,'職位') # 寫入坐標為(1,0)內容為軟件測試工程師 sheet.write(1,0,'軟件測試工程師') # 保存到excel中 data.save(excle_path)
找到excel的路徑中打開查看,發現已經寫入成功了

Xlwt的其他方法
其中xlwt這些操作Excel只是默認的方法,xlwt也可以更改寫入內容的文字大小,顏色等操作
style = xlwt.XFStyle() # 初始化樣式 font = xlwt.Font() # 創建字體 font.name = u'微軟雅黑' # 字體類型 font.colour_index = 6 #字體顏色 font.underline = True #下划線 font.italic = True # 斜體 font.height = 400 #字體大小 200等於excel字體大小中的10 style.font = font #設定樣式
如果哪些內容寫入時需要更改上面的格式內容,可以在書寫的后面加上方法
給大家舉個小栗子
# coding:utf-8 import xlwt # excel路徑 excle_path = r'E:\12314.xls' # 創建一個Workbook模塊 data = xlwt.Workbook(encoding='utf-8') style = xlwt.XFStyle() # 初始化樣式 font = xlwt.Font() # 創建字體 font.name = u'微軟雅黑' # 字體類型 font.colour_index = 6 # 字體顏色 font.underline = True # 下划線 font.italic = True # 斜體 font.height = 400 # 字體大小 200等於excel字體大小中的10 style.font = font # 設定樣式 # 創建一個表格,cell_overwrite_ok=True 為不覆蓋表,默認為False sheet = data.add_sheet('test123',cell_overwrite_ok=True) # 寫入坐標為(0,0)內容為職位 sheet.write(0,0,'職位',style) # 寫入坐標為(1,0)內容為軟件測試工程師 sheet.write(1,0,'軟件測試工程師',style) # 保存到excel中 data.save(excle_path)

當然python操作Excel的方法不僅僅是這么多,還有更多的騷操作,等到我們用到的時候在一起學習哈
感覺安靜寫的對您有幫助的話,可以點個關注,持續更新中~~
