使用 Python 第三方库 xlwt 写入数据到 Excel 工作表

  • 1. 安装 xlwt 库
  • 2. 使用 xlwt 库
    • 2.1 向 Excel 工作表写入单个数据
    • 2.2 向 Excel 工作表写入多个数据
    • 2.3 向 Excel 工作表写入多个数据(进阶)
  • 3. 总结

1. 安装 xlwt 库

Python 写入数据到 Excel 工作簿中可以使用第三方库 xlwt. xlwt 拆分下来看就是 excel 和 write 的简化拼接,意思就是写数据到 Excel. 这个第三方库的 pip 安装命令如下所示:

pip install xlwt -i https://mirrors.aliyun.com/pypi/simple

xlwt 的安装方式和 xlrd 的安装方式一样,不过这里 xlwt 没有指定版本,直接用默认版本就好,其他的不再赘述了。

2. 使用 xlwt 库

使用 xlwt 写入到 Excel 工作簿支持两种扩展名:xls 和 xlsx. 这两种扩展名代表两种不同的 Excel 版本。
xls 为 Excel 2003 及以前的版本扩展名,支持的最大行数为 65536, 最大列数为 256. 而 xlsx 为 Excel 2007 及以后的版本扩展名,它的最大支持行数为 1048576, 最大支持列数为 16384.
需要注意的是,Excel 2007 及之后版本可以打开上述两种格式文件,而 Excel 2003 版本只能打开 xls 格式文件。

2.1 向 Excel 工作表写入单个数据

因为这篇教程是看完 《使用 Python 第三方库 xlrd 读取 Excel 中的数据》才看的进阶教程。因此,Excel 工作簿和 Excel 工作表以及单元格的层次关系,我不再赘述了,直接 ”上菜“:

import xlwt# 新建工作簿
my_workbook = xlwt.Workbook()
# 创建新的工作表对象 worksheet, 并取名为 test_sheet
sheet = my_workbook.add_sheet('test_sheet')
# 给定单元格坐标, 一次写入一个单元格数据
sheet.write(0, 0, '姓名')
sheet.write(0, 1, '年龄')
sheet.write(0, 2, '班级')
sheet.write(0, 3, '学号')
# 保存文件
my_workbook.save('test.xlsx')

代码解析:

  1. 首先,通过 Workbook() 方法新建一个工作簿对象
  2. 之后,通过 add_sheet() 方法新建一个 Sheet 表,表名为 ‘test_sheet’, 这个可以根据需求自定义。
  3. 然后,又通过 write() 方法写入数据,方法中的参数分别为单元格横坐标、纵坐标和单元格数据。
  4. 最后,使用 save() 方法保存文件,参数为文件名字符串。

2.2 向 Excel 工作表写入多个数据

那么在 2.1 小节中,我们使用 write() 方法每次只写入一个单元格数据,在写入多个数据的时候,每次都调用一次 write() 方法未免过于繁琐,增加了很多冗余代码,降低编码效率。
因此,我们使用一种新的方法,将数据写入到单元格中。修改后的代码如下:

import xlwt# 新建工作簿
my_workbook = xlwt.Workbook()
# 创建新的工作表对象 worksheet, 并取名为 test_sheet
sheet = my_workbook.add_sheet('test_sheet')
name_list = ['姓名', '年龄', '班级', '学号']
for i in name_list:sheet.write(0, name_list.index(i), i)
# 保存文件
my_workbook.save('test.xlsx')

代码解析:
在上面的代码中,我们将要写入的同一行数据存放在一个列表中,之后使用 for 循环,固定单元格横坐标为 0, 列坐标不断变化,列坐标通过调用列表的 index() 方法获取,之后写入的数据就是循环到的当前值。

2.3 向 Excel 工作表写入多个数据(进阶)

在 2.2 小节中,我们学习了向 Excel 工作表写入多个数据,方法是将多个数据以列表的形式组合起来,然后使用 for 循环。那么如果说,写入的数据是列表和字典嵌套形成的,又该怎样将数据剥离出来写入到对应的单元格内呢?
例如,给定一个数据 data, 如下所示:

data = [{'name': '华仔仔','age': 12,'gender': '男','xuehao': '001'},{'name': '华仔','age': 15,'gender': '男','xuehao': '002'},{'name': '帅气的华仔仔','age': 18,'gender': '男','xuehao': '003'},{'name': '华仔仔coding','age': 20,'gender': '男','xuehao': '004'}
]

如果是这样的一个数据,此时我们可以考虑使用 Python 内置的函数 enumerate(). 代码如下所示:

import xlwt# 新建工作簿
my_workbook = xlwt.Workbook()
# 创建新的工作表对象 worksheet, 并取名为 test_sheet
sheet = my_workbook.add_sheet('test_sheet')
name_list = ['姓名', '年龄', '性别', '学号']
for i in name_list:sheet.write(0, name_list.index(i), i)
data = [{'name': '华仔仔','age': 12,'gender': '男','xuehao': '001'},{'name': '华仔','age': 15,'gender': '男','xuehao': '002'},{'name': '帅气的华仔仔','age': 18,'gender': '男','xuehao': '003'},{'name': '华仔仔coding','age': 20,'gender': '男','xuehao': '004'}
]
for i, item in enumerate(data):sheet.write(i+1, 0, item['name'])sheet.write(i + 1, 1, item['age'])sheet.write(i + 1, 2, item['gender'])sheet.write(i + 1, 3, item['xuehao'])
# 保存文件
my_workbook.save('test.xlsx')

代码解析:

  1. 首先,看一下 data, data 是一个列表类型变量,它的元素是字典类型,一共四个字典元素。
  2. 之后,再看一下 enumerate() 函数。该函数用于将一个可便利的数据对象(如列表、元组和字符串) 组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环中。
  3. 因此,在 for 循环中的变量 i 代表的是列表中遍历到的当前字典的下标,item 代表的是当前遍历到的字典的值, item[‘name’] 表示根据键 ‘name’, 获取键对应的值。
  4. 最后,对于 enumerate() 函数的使用,再举一个例子。例如:words = [‘A’, ‘B’, ‘C’, ‘D’]. for i, word in enumerate(words): print(i, element). 它的输出结果应该是 0, ‘A’ ‘1’, ‘B’, ‘2’, ‘C’, ‘3’, ‘D’.

3. 总结

通过上面的学习,相信大家对 xlwt第三方库的安装以及使用第三方库向Excel 中写入数据的方法有了一定的掌握。如果想要了解更多关于 xlwt 模块的方法,可以参考官网文档哦!
如果觉得这篇文章有用的话,记得点赞+收藏哦!

使用 Python 第三方库 xlwt 写入数据到 Excel 工作表相关推荐

  1. 如何设置Oracle工作表有提示,excel表格中自动数据提醒-excel工作表中如何自动跳出提醒框...

    excel表格怎么设置到期日前自动提醒功能 菜单项〉工具>选项.在图中选择.在弹出的对话框中把"记忆式键入"前面的对勾去掉行了. 详见图示. 在Excel表格里面怎样设置&q ...

  2. 『Python』『Pandas/Xlwings』如何不覆盖已有工作表,把新数据写入新的Excel工作表

    e n v : env: env: p a n d a s : 1.3.0 \space \space \space pandas: \space 1.3.0    pandas: 1.3.0 x l ...

  3. 【Python】生成Word写入数据 -操作Excel、Word、CSV(5)(保姆级图文注释+测试代码+api例程)

    目录 API说明: 1.创建有标题的 Word例程 2. 创建章节和段落 3. 设置字体和引用 4. 创建项目列表 5. 图片和表格 总结 欢迎关注 『Python』 系列,持续更新中 欢迎关注 『P ...

  4. python xlwt写入数据超过范围限制_用xlrd包读取Excel文件-尽量不用xlwt包写入Excel文件最多能支持65536行数据。...

    1. 引有包 import xlrd1 打开文件 data = good_ivy = xlrd.open_workbook(r'商品库存.xls')1 2 获取你要打开的sheet文件 # table ...

  5. python第三方库有哪些-Python常用第三方库大盘点

    Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域.下面简单介绍下网络爬虫.自动化.数据分析与可视化.WEB开发.机器学习和其他常用的一些第三方库,如果有你感兴趣的库,不妨去试试它的功能 ...

  6. 第 11 章 Python 第三方库纵览

    整理的文章内容主要来源为高教版<计算机等级考试二级 Python>教程视频讲义,并且更正了原讲义中的错误的地方. 专栏文章索引如下: 考试大纲 第 1 章 程序设计基本方法 第 2 章 P ...

  7. python的xlwt库的作用_Python:使用第三方库xlwt来写Excel

    继上一篇文章使用xlrd来读Excel之后,这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表示write x ...

  8. 以下用于数据存储领域的python第三方库是-Python 二级选择题

    88.下面代码的输出结果是 ( A ) print(round(0.1 + 0.2,1) == 0.3) A: True B: 0 C: 1 D: False 解释: round 是一个四舍五入的函数 ...

  9. Python的第三方库xlwt

    Python的第三方库xlwt在Pypi上的地址:https://pypi.org/project/xlwt/ xlwt是一个用于创建xls格式的Excel文件的Python库,当前版本为1.3.0, ...

最新文章

  1. 计算机电路逻辑分析基础知识答案,计算机电路基础学习指导与习题解答
  2. VMware vSphere/vCenter/ESX(i)介绍
  3. ROS2学习(三).ROS2环境配置
  4. Linux篇 | 用户、组和权限(一)
  5. 微信小程序下拉框插件_微信小程序自定义select下拉选项框组件的实现代码_清玖_前端开发者...
  6. thinkphp在IIS7.5+环境下部署出现的URL重写问题解决方法
  7. 基于Redis实现分布式单号,分布式ID(自定义规则生成)
  8. Maya批量属性修改链接插件1.1.0更新
  9. 辨析NOR FLASH地址左右移的问题
  10. 【FL攻防综述】Privacy and Robustness in Federated Learning: Attacks and Defenses
  11. watch监听和computed计算属性的使用和区别
  12. 计算机键盘掉色,为什么计算机键盘指示灯熄灭?
  13. 靶机17 GROTESQUE: 3.0.1
  14. 人工智能的出现,赋予零售业6种应用新生命!
  15. JAVA常用工具类-【5】FFMPEG转换、分割、合并音频
  16. 上海某软件公司电话面试分享
  17. 英语入门文章阅读第一篇
  18. 英语文章关于计算机的,关于计算机的英语范文5篇
  19. dnf跨几服务器比较稳定,2018DNF最新跨区表、dnf跨区合并表反应哪个跨区人最多...
  20. Python:实现寻峰算法(附完整源码)

热门文章

  1. Json与 String 转换
  2. Java-ssm交通违法行为举报系统app毕业设计(附源码、运行环境)
  3. 山东专升本计算机第六章-数据库技术
  4. 国有企业、国有独资公司、国有控股公司、国有参股公司区别
  5. 代糖警告!「无糖0卡」照样能引起高血糖,影响人体代谢机制 | Cell
  6. Dart或Flutter中解决异常-type ‘int‘ is not a subtype of type ‘double‘
  7. 13-企业网站数据库-企业介绍数据操作
  8. Arduino烧录bootloader,并作为ISP进行下载程序
  9. 基于java互助平台设计_java毕业设计_springboot框架的校园互助网站设计
  10. 会员管理系统实战开发教程(一)