Python将嵌套列表各子列表写入XLS格式Excel工作表的方案问询
嵌套列表写入XLS格式Excel工作表实现方案
前置依赖
需先安装专门用于生成XLS格式文件的xlwt库,执行以下命令安装:pip install xlwt
方案1:原生嵌套列表直接写入(推荐)
无需修改原始输入格式,直接将每个子列表映射为Excel的一行,代码如下:
import xlwt # 原始输入嵌套列表 input_list = [['as','as*s','sd','*ssa'],['a','ds','dfg','mal']] # 初始化XLS工作簿,设置编码为utf-8避免特殊字符乱码 workbook = xlwt.Workbook(encoding='utf-8') # 新建工作表,可自定义修改工作表名称 worksheet = workbook.add_sheet('Sheet1') # 双层遍历写入内容:行索引从0开始计数,每个子列表对应一行 for row_index, row_content in enumerate(input_list): for col_index, cell_content in enumerate(row_content): worksheet.write(row_index, col_index, cell_content) # 保存为XLS格式文件,可自定义修改存储路径和文件名 workbook.save('output.xls')
方案2:扁平列表拆分后写入
如果需要使用扁平格式的输入列表,可先按每4个元素为一组拆分出对应行,再执行写入,代码如下:
import xlwt # 扁平输入列表 modified_input_list = ['as','as*s','sd','*ssa','a','ds','dfg','mal'] # 按每4个元素为一组拆分生成行数据 split_rows = [modified_input_list[i*4 : (i+1)*4] for i in range(len(modified_input_list)//4)] workbook = xlwt.Workbook(encoding='utf-8') worksheet = workbook.add_sheet('Sheet1') for row_index, row_content in enumerate(split_rows): for col_index, cell_content in enumerate(row_content): worksheet.write(row_index, col_index, cell_content) workbook.save('output.xls')
注意事项
- 本方案所用
xlwt库仅支持生成标准XLS格式文件,完全匹配格式要求,不支持生成XLSX格式 - 写入时行、列索引默认从0开始计数,可根据实际需求调整写入起始位置
- 若内容包含特殊字符,保持utf-8编码即可正常写入不会乱码
内容的提问来源于stack exchange,提问作者Zenith_1024
相关产品推荐
相关产品推荐

