#coding=utf-8
import pandas as pd
from openpyxl import load_workbook
import xlrd
PATH2 = 'E:\\syxq.xlsx' #excel表
# 读取Excel文件
file_path = PATH2
workbook = xlrd.open_workbook(file_path)
sheet = workbook.sheet_by_index(0) # 假设要读取第一个工作表
# 创建一个空的DataFrame来存储非合并单元格的数据
data = []
# 遍历每个单元格,检查是否为合并单元格,并获取非合并单元格的值
for row_idx in range(sheet.nrows):
row_data = []
for col_idx in range(sheet.ncols):
cell_value = sheet.cell_value(row_idx, col_idx)
is_merged = False
# 检查当前单元格是否在合并区域内
for merged_range in sheet.merged_cells:
rlo, rhi, clo, chi = merged_range
if rlo <= row_idx < rhi and clo <= col_idx < chi:
is_merged = True
break
if not is_merged:
row_data.append(cell_value)
else:
row_data.append(None) # 对于合并单元格,你可以选择填充None或者其他标记
data.append(row_data)
# 将数据转换为DataFrame
df = pd.DataFrame(data)
# 打印结果
sw = df.iloc[6, 5] # 引用第六行、第五列的值
hw = df.iloc[6, 6] # 引用第六行、第六列的值
fw = df.iloc[6, 7] # 引用第六行、第七列的值
pdb = df.iloc[6, 8] # 引用第六行、第八列的值
print sw,hw,fw,pdb
Python 2.7 读带合并单元格的费用合并单元格数据
于 2024-06-15 14:52:08 首次发布