解决 Python 中 'xlrd.biffh.XLRDError: Excel xlsx file; not supported' 错误

如果你在使用 xlrd 库读取 .xlsx 文件时遇到 'xlrd.biffh.XLRDError: Excel xlsx file; not supported' 错误,这意味着 xlrd 库本身对 .xlsx 文件的支持有限。

为了解决这个问题,你可以使用 openpyxl 库,它专门用于处理 .xlsx 文件。

使用 openpyxl 读取 .xlsx 文件

以下是使用 openpyxl 库读取 .xlsx 文件并进行数据处理的 Python 代码示例:pythonimport jsonimport pandas as pdfrom openpyxl import load_workbook

定义文件路径和字段名称file_paths = ['首次病程记录.xlsx', '出院记录.xlsx', '日常病程记录.xlsx']id_field_name = '就诊流水号'

创建一个空的DataFrame用于存储所有数据merged_data = pd.DataFrame()

遍历每个文件路径for file_path in file_paths: # 加载Excel文件 wb = load_workbook(filename=file_path) # 获取第一个工作表 sheet = wb.active

# 将工作表数据加载到DataFrame中    data = pd.DataFrame(sheet.values, columns=sheet[1])    # 将数据合并到总的DataFrame中    merged_data = merged_data.merge(data, on=id_field_name, how='outer')

选择需要输出的字段selected_fields = ['就诊流水号', '性别', '入院诊断']

选择需要的列output_data = merged_data[selected_fields]

输出为CSV文件output_data.to_csv('output.csv', index=False)print('CSV文件输出成功!')

输出为JSON文件output_data_json = output_data.to_json(orient='records')with open('output.json', 'w') as f: f.write(output_data_json)print('JSON文件输出成功!')

这段代码首先使用 openpyxl.load_workbook() 函数加载 .xlsx 文件,然后使用 pandas 库进行数据处理。

请确保你已经使用 pip install openpyxl 命令安装了 openpyxl 库。

解决Python XLRDError:不支持Excel xlsx文件

原文地址: http://www.cveoy.top/t/topic/b0DN 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录