如何使用Django读取Excel文件中指定工作表的数据
解决方案
你可以直接通过dataset.load方法的内置参数指定目标工作表,无需修改后续入库逻辑:
方案1:使用load方法原生参数(推荐)
dataset库读取xlsx格式时支持sheet参数,直接传入你要读取的工作表名称即可,修改代码如下:
imported_data = dataset.load(data.read(), format='xlsx', sheet='Sheet2')
修改后imported_data的结构和你原有代码返回的结构完全一致,后续遍历入库的逻辑不需要做任何调整。
方案2:兼容旧版本的替代方案
如果你使用的dataset版本较低不支持sheet参数,可以用openpyxl单独读取指定工作表后整理成对应格式:
- 先安装依赖:
pip install openpyxl - 替换原有读取代码:
from io import BytesIO from openpyxl import load_workbook # 读取文件 wb = load_workbook(filename=BytesIO(data.read())) # 取指定工作表 ws = wb['Sheet2'] # 按行读取数据,结构和原imported_data完全匹配 imported_data = list(ws.values)
该方案返回的imported_data同样是按行排列的列表嵌套结构,后续入库逻辑可直接复用。
内容的提问来源于stack exchange,提问作者searcher__dm01
相关产品推荐
相关产品推荐

