Python生成Excel与CSV表格的两种方法
本文介绍在 Python 中创建表格数据的两种常用方式。通过第三方库 xlwt 写入传统的 .xls 格式文件,或使用内置 csv 模块生成轻量级的 .csv 文本文件。文章详细演示了创建工作表、写入指定行列数据、保存文件以及后续读取核对的全过程,并提供关键代码与参数说明。
选择适合的数据存储格式
在处理抓取或收集的数据时,结构化存储是关键步骤。Python 环境中主要采用以下方式生成表格:
- 基于 xlwt 生成 .xls 文件:适用于需要兼容性较好、支持基础样式的老版 Excel 表格,操作直观但需额外安装第三方库。
- 基于内置 csv 模块生成 .csv 文件:纯文本格式,无需安装依赖,体积小巧,适合批量数据传输与分析,但无法设置单元格格式或多工作表。
第一种:使用 xlwt 创建 Excel 表格
xlwt 是 Python 中专门用于写入老版本 Excel 文件的第三方包。该方法通过实例化工作簿对象,添加 Sheet 页后逐格写入数据。
import xlwt
# 1. 创建工作簿并设定编码格式
work_book = xlwt.Workbook(encoding='utf-8')
# 2. 添加名为 'data_sheet' 的工作表
sheet = work_book.add_sheet('data_sheet')
# 3. 使用 sheet.write(行索引, 列索引, '内容') 写入单元格
sheet.write(0, 0, '第一行第一列')
sheet.write(0, 1, '第一行第二列')
# 4. 将内存中的数据保存到本地磁盘
work_book.save('Excel_data.xls')

操作要点说明:
- 导入
xlwt库前需通过终端执行pip install xlwt完成安装。 add_sheet()接收字符串作为工作表命名参数。write()方法的三个参数分别代表行号、列号和单元格内容,索引从 0 开始计数。- 最后执行
save()方法完成落盘,务必带上.xls后缀名。
第二种:使用 csv 模块创建表格
csv 模块内置于标准库中。它生成的 .csv 本质上是逗号分隔的纯文本,具有以下限制:所有数据均为字符串类型、不可更改字体颜色或大小、不支持多工作表(Sheet)、无法嵌入图片。
第1步:向文件中写入数据
利用 csv.writer 获取写入器对象,通过 writerow() 单行写入或 writerows() 批量写入列表集合。
import csv
# 定义待写入的多维数据列表
rows = [['小花', 1, 'abc'], ['小件', 2, 'def'], ['小狗', 3, 'ghi']]
# 以写入模式打开文件,开启 newline='' 防止 Windows 下产生多余空行
with open('output_table.csv', 'w', newline='', encoding='utf-8') as csv_file:
writer = csv.writer(csv_file)
# 直接使用 writerows 一次性写入所有数据
writer.writerows(rows)

参数细节:newline='' 的作用是阻止写入器产生的换行符在 Windows 系统中被系统自动转义为双重换行,确保每行数据紧凑排列。
第2步:读取并验证数据
生成文件后,可通过相同模块进行回读校验。需注意 csv.reader 返回的是一个迭代器对象,直接打印会显示内存地址。
# 以读取模式打开之前生成的 csv 文件
with open('output_table.csv', 'r', encoding='utf-8') as read_file:
reader = csv.reader(read_file)
# 打印原始迭代器对象(仅为测试观察)
print("迭代器状态:", reader)
# 转换为列表以便完整查看所有行列数据
data_list = list(reader)
print(data_list)

运行结果将按行展示包含各字段值的二维列表结构,确保写入内容无误。
总结
以上就是在 Python 中创建表格的详细内容,更多关于 Python 数据处理与脚本开发的操作指南请持续关注本站后续更新!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













