使用python来实现报表自动化
来源:互联网 发布:数据存储单位从小到大 编辑:程序博客网 时间:2024/05/22 07:47
本文转载于http://blog.csdn.net/coraline_m?viewmode=contents
本篇文章将介绍:
- xlwt 常用功能
- xlrd 常用功能
- xlutils 常用功能
- xlwt写Excel时公式的应用
- xlwt写入特定目录(路径设置)
xlwt Python语言中,写入Excel文件的扩展工具。可以实现指定表单、指定单元格的写入。支持excel03版到excel2013版。使用时请确保已经安装python环境。百度百科
xlrd Python语言中,读取Excel的扩展工具。可以实现指定表单、指定单元格的读取。使用时请确保已经安装python环境。百度百科
NOTICE:
- xlwt对Excel只能进行只写操作
- xrrd对Excel只能进行只读操作
此外,还有xlutils.copy可以实现Excel的复制再编辑。
1.python写excel — xlwt常用功能
A.准备工作
- 安装xlwt :在终端中输入pip install xlwt或者easy_install xlwt
- 引入xlwt包 :
- 1
- 1
B.基础教程
- 新建工作簿&增加sheet: 新建一个工作簿,然后往里添加sheet
- 1
- 2
- 3
- 1
- 2
- 3
- 往sheet中写入内容: sheet.write函数可以传三个参数
第i(参数1)第j(参数2)列存入内容(参数3)
- 1
- 2
- 1
- 2
- 合并单元格并写入内容:
- 1
- 2
- 1
- 2
- 最后使用f.save(‘demo’)
就可以把f保存到excel了
C.实战
- 我们可以先新建一个工作簿,然后往里添加两个sheet,然后查看效果
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 效果如下,发现表格xlwt_tutorial中有两个sheet。
- 我们开始往sheet中写入内容,不传入style参数
先只使用write函数
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 效果如下,我们建立了一个3行4列的表格。(write函数行和列值都是从0开始的)
- 下面我们使用write_merge函数来合并单元格并写入
在f.save之前添加一行代码
- 1
- 1
- 效果如下,将第2-3行第4列合并
2.pythonxd读excel —xlrd常用功能
A.准备工作
- 安装xlrd :在终端中输入pip install xlrd或者easy_install xlrd
- 引入xlrd包 :
- 1
- 1
B.基础教程&实战
- 打开一个Excel,然后输出所有sheet的名字
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
输出:[u’葡小萄’, u’小葡萄’]
- 得到表格里的所有的sheet
- 1
- 2
- 1
- 2
- 得到sheet中的内容
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
输出为:
葡小萄 3 4
小葡萄 0 0
.
- 1
- 2
- 1
- 2
输出为:
[u’葡萄’, 18.0, u’北京电影学院’, u’汉语言文学’]
[u’学校’, u’北京电影学院’, u’帝国国王科技大学’]
.
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
输出为:
葡萄
2
3.xlutils 常用功能
A.准备工作
- 安装xlutils :在终端中输入pip install xlutils或者easy_install xlutils
- 引入xlutils包 :
- 1
- 1
B.xlutils中copy功能
我们可能会遇到一个问题,想对一个存储好的Excel进行编辑。
但是xlrd是只读模式,不能进行编写。
而xlwt是只写模式,不能读入Excel文件进行编辑。
我们可以采用xlrd打开一个文档,后采用xlutils中copy功能把文档拷贝,然后进行编辑即可。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
输出为:
葡小萄
输出的表格已经改变。
PS: 可以看到第二行第四列和第三行第四列合并格已经在COPY的时候被毁掉了。
4.xlwt写Excel时公式的应用
我们写用xlwt写一个表格
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
打开表格为:
我们现在想做的是统计grape的总分和monkey的总分:
在f.save之前加入代码:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
输出为:
B2+B3+B4+B5
C2+C3+C4+C5
打开表格为:
5.xlwt写入特定目录(路径设置)
由于代码分层的缘故,使代码整体框架优美。
我们需要把文件写入到特定目录下。
但是由于xlwt中没有直接写入到特定目录的函数。
因此使用shutil.move函数来把文件MOV到特定目录下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
效果图:
- 使用python来实现报表自动化~
- 使用python来实现报表自动化
- [Python自动化]使用C来扩展Python
- 使用 Python 实现鼠标键盘自动化
- 使用cfengine来实现服务器的自动化配置
- 使用cfengine来实现服务器的自动化配置
- 使用puppet来实现自动化安装openstack mysql节点
- python webdriver实现自动化
- 生产报表的自动化实现方案
- 使用POI来做报表
- 使用Python+selenium实现第一个自动化测试脚本
- Python+Selenium使用Page Object实现页面自动化测试
- python使用Fabric模块实现自动化运维
- 使用Python实现自动化抓取浏览器内容、提交结果
- ZABBIX3.2使用python脚本实现监控报表
- python来进行UI自动化测试
- python编写的自动化来处理优化大师
- 不使用 Report Viewer, 实现调用 Reporting Service 来实现直接输出报表。
- KeyPoint of 《Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks》
- 图片保存
- linux之安装软件出现Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)解决总结
- P1226 取余运算||快速幂
- MxNet系列——community——index
- 使用python来实现报表自动化
- 基础练习 十六进制转八进制
- 索引失效的情形
- 关于热修复需要了解的
- Windows下我的sublime text3
- PHP打开乱码问题
- android6.0如何删除桌面上的导航栏、状态栏、google搜索栏和系统搜索栏
- SQLite开源库LitePal
- String、StringBuffer 和 StringBuilder 的区别