利用Python操作excel表格的完美指南
作者:运维家 时间:2022-05-21 07:59:09
主旨
在日常工作中,我们会经常且频繁的使用excel表格,那么我们是否可以通过python来操作excel表格,让其自动化的来代替我们的工作呢?比如涉及到的居中、合并单元格、修改字体颜色等。
环境
linux 服务器一台,亦或者windows10电脑一台
python3.7.1版本,python3.x的都可以
安装模块
操作excel需要用到的模块是“xlwt”,我们需要使用python中的pip命令来安装此模块;
PS:centos默认的python是2.x版本,建议升级到python3.x版本,否则无法进行后续过程;可以参考这篇文章:https://www.jb51.net/article/207073.htm,即可查看具体安装过程;
[yunweijia@localhost jier]$ sudo pip3 install xlwt -i https://pypi.tuna.tsinghua.edu.cn/simple # 使用国内源下载xlwt模块
[yunweijia@localhost jier]$ sudo pip3 list # 查看下载结果
Package Version
---------- -------
pip 21.3.1
setuptools 39.0.1
xlwt 1.3.0
[yunweijia@localhost jier]$
新建excel
代码:
#coding:utf-8
#!/usr/local/python3/bin/python3
# 导入模块
import xlwt
# 新建一个excel
workbook = xlwt.Workbook(encoding='utf-8')
# 新建一个sheet,名字为“运维家”,可以创建多个sheet
worksheet = workbook.add_sheet('运维家')
# 保存excel,名字为“yunweijia”
workbook.save(str("yunweijia.xls"))
运行:
[yunweijia@localhost jier]$ python3 ceshi.py
[yunweijia@localhost jier]$ ls
ceshi.py yunweijia.xls
[yunweijia@localhost jier]$
结果:
单元格写入数据
代码:
#coding:utf-8
#!/usr/local/python3/bin/python3
# 导入模块
import xlwt
# 新建一个excel
workbook = xlwt.Workbook(encoding='utf-8')
# 新建一个sheet
worksheet = workbook.add_sheet('运维家')
# 在单元格中写入数据
worksheet.write(0, 0, "你好")
worksheet.write(0, 1, "我好")
worksheet.write(0, 2, "大家好")
worksheet.write(1, 1, "嘿嘿嘿")
# 保存excel
workbook.save(str("yunweijia.xls"))
运行:
[yunweijia@localhost jier]$ python3 ceshi.py
[yunweijia@localhost jier]$ ls
ceshi.py yunweijia.xls
[yunweijia@localhost jier]$
结果:
合并单元格
代码:
#coding:utf-8
#!/usr/local/python3/bin/python3
# 导入模块
import xlwt
# 新建一个excel
workbook = xlwt.Workbook(encoding='utf-8')
# 新建一个sheet
worksheet = workbook.add_sheet('运维家')
# 在单元格中写入数据
worksheet.write(0, 0, "你好")
worksheet.write(0, 1, "我好")
worksheet.write(0, 2, "大家好")
# 合并单元格(首单元格列,尾单元格列, 首单元格行, 尾单元格行)
worksheet.write_merge(1, 1, 0, 2, "嘿嘿嘿")
# 保存excel
workbook.save(str("yunweijia.xls"))
运行:
[yunweijia@localhost jier]$ python3 ceshi.py
[yunweijia@localhost jier]$ ls
ceshi.py yunweijia.xls
[yunweijia@localhost jier]$
结果:
居中显示
PS:可以根据实际情况创建多个样式,只要名字不一样即可;
代码:
#coding:utf-8
#!/usr/local/python3/bin/python3
# 导入模块
import xlwt
# 新建一个excel
workbook = xlwt.Workbook(encoding='utf-8')
# 新建一个sheet
worksheet = workbook.add_sheet('运维家')
# 创建一个样式
head_style = xlwt.XFStyle() # 创建样式
# 设置单元格对齐方式
ahead_lignment = xlwt.Alignment() # 对齐初始化
ahead_lignment.horz = xlwt.Alignment.HORZ_CENTER # 水平居中
ahead_lignment.vert = xlwt.Alignment.VERT_CENTER # 垂直居中
head_style.alignment = ahead_lignment # 样式重载
# 在单元格中写入数据
worksheet.write(0, 0, "你好")
worksheet.write(0, 1, "我好")
worksheet.write(0, 2, "大家好")
# 合并单元格(首单元格列,尾单元格列, 首单元格行, 尾单元格行)
worksheet.write_merge(1, 2, 0, 2, "嘿嘿嘿", head_style)
# 保存excel
workbook.save(str("yunweijia.xls"))
运行:
[yunweijia@localhost jier]$ python3 ceshi.py
[yunweijia@localhost jier]$ ls
ceshi.py yunweijia.xls
[yunweijia@localhost jier]$
结果:
修改字体和颜色
代码:
#coding:utf-8
#!/usr/local/python3/bin/python3
# 导入模块
import xlwt
# 新建一个excel
workbook = xlwt.Workbook(encoding='utf-8')
# 新建一个sheet
worksheet = workbook.add_sheet('运维家')
# 创建一个样式
head_style = xlwt.XFStyle() # 创建样式
# 创建字体
head_font = xlwt.Font() # 字体初始化
head_font.name = '楷体' # 字体
head_font.height = 300 # 大小
head_font.colour_index = 2 # 红色
head_style.font = head_font # 样式重载
# 设置单元格对齐方式
ahead_lignment = xlwt.Alignment() # 对齐初始化
ahead_lignment.horz = xlwt.Alignment.HORZ_CENTER # 水平居中
ahead_lignment.vert = xlwt.Alignment.VERT_CENTER # 垂直居中
head_style.alignment = ahead_lignment # 样式重载
# 在单元格中写入数据
worksheet.write(0, 0, "你好")
worksheet.write(0, 1, "我好")
worksheet.write(0, 2, "大家好")
# 合并单元格(首单元格列,尾单元格列, 首单元格行, 尾单元格行)
worksheet.write_merge(1, 2, 0, 2, "嘿嘿嘿", head_style)
# 保存excel
workbook.save(str("yunweijia.xls"))
运行:
[yunweijia@localhost jier]$ python3 ceshi.py
[yunweijia@localhost jier]$ ls
ceshi.py yunweijia.xls
[yunweijia@localhost jier]$
结果:
来源:https://blog.csdn.net/ouyangzhenxin/article/details/122754703
标签:python,excel,表格
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
MySQL表设计优化与索引 (七)
2010-10-25 20:06:00
Python中getattr函数和hasattr函数作用详解
2022-10-29 15:42:11
如何使用图片精灵优化你的网站
2009-07-21 11:35:00
![](https://img.aspxhome.com/file/UploadPic/20097/21/how_to_image_sprites-95s.jpg)
Python List列表对象内置方法实例详解
2023-08-21 12:49:58
php 404错误页面实现代码
2023-11-15 07:58:31
Laravel框架执行原生SQL语句及使用paginate分页的方法
2023-11-24 00:27:24
python实现按首字母分类查找功能
2023-10-13 11:05:09
类型转换的小乐趣
2010-11-30 21:37:00
Python下载网易云歌单歌曲的示例代码
2023-06-10 17:06:28
![](https://img.aspxhome.com/file/2023/9/103019_0s.png)
Python requests timeout的设置
2022-01-27 01:20:40
SQL Server 2005数据库镜像配置脚本示例
2008-04-12 14:49:00
CSS框架/命名/规则 注意要点
2008-06-03 13:07:00
细化解析:SQL Server 2000 的各种版本
2009-02-05 15:41:00
开心网上input输入框研究
2009-03-06 12:52:00
![](https://img.aspxhome.com/file/UploadPic/20093/6/1207fc9f5fag215-89s.jpg)
关于人物角色设计讨论
2008-10-16 13:47:00
![](https://img.aspxhome.com/file/UploadPic/200810/16/20081016134946734s.jpg)
python绘制地震散点图
2021-12-21 13:09:08
![](https://img.aspxhome.com/file/2023/5/82545_0s.jpg)
详解Python3定时器任务代码
2023-10-15 14:50:26
超轻量级MSXML多功能测试程序
2009-05-19 12:38:00
![](https://img.aspxhome.com/file/UploadPic/20095/19/20090513224141384-92s.gif)
python简单鼠标自动点击某区域的实例
2021-03-05 16:35:52
Python 敏感词过滤的实现示例
2021-07-04 12:17:28