Python基于xlrd模塊處理合并單元格
目的:
python能使用xlrd模塊實現(xiàn)對Excel數(shù)據(jù)的讀取,且按照想要的輸出形式。
總體思路:
(1)要想實現(xiàn)對Excel數(shù)據(jù)的讀取,需要用到第三方應(yīng)用,直接應(yīng)用。
(2)實際操作時候和我們實際平時打開一個文件進行操作一樣,先找到文件-->打開文件-->定義要讀取的sheet-->讀取出內(nèi)容。
Excel處理合并單元格:
已存在合并單元格如下:

xlrd中的 merged_cells 屬性介紹:[code]import xlrd
import xlrd
workbook = xlrd.open_workbook('./data/test_data.xlsx')
sheet = workbook.sheet_by_name('Sheet1')
merged = sheet.merged_cells # 返回一個列表 起始行,結(jié)束行,起始列,結(jié)束列)
print(merged)

讀取合并單元格中的某一個單元格的值編寫成一個方法:
def get_merged_cell_value(row_index,col_index):
cell_value = None
for (rlow, rhigh, clow, chigh) in merged:
if (row_index >= rlow and row_index < rhigh):
if (col_index >= clow and col_index < chigh):
cell_value = sheet.cell_value(rlow, clow)
return cell_value
print( get_merged_cell_value(0,1) )
給出坐標,判斷是否為合并單元格:
#方法參數(shù)為單元格的坐標(x,y),如果給的坐標是合并的單元格,輸出此單元格是合并的,否則,輸出普通單元格
def get_merged_cell_value(row_index,col_index):
for (rlow, rhigh, clow, chigh) in merged:
if (row_index >= rlow and row_index < rhigh and col_index >= clow and col_index < chigh):
print("此單元格是合并單元格")
else:
print("此單元格為普通單元格")
print( get_merged_cell_value(4,3) )
##讀取第3列的所有數(shù)據(jù),并進行降序排序
clox=3
list1=[]
for i in range(1,sheet.nrows):
cell_value=float(sheet.cell_value(i,clox))
list1.append(cell_value)
print(list1)
list1.sort()
list1.reverse()
print(list1)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Python實現(xiàn)URL監(jiān)測與即時推送
這篇文章主要為大家介紹了Python實現(xiàn)URL監(jiān)測與即時推送,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-11-11

