python 自动化出报表,python实现报表自动化详解

本篇文章将介绍:

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包 :

B.基础教程

新建工作簿&增加sheet: 新建一个工作簿,然后往里添加sheet

往sheet中写入内容: sheet.write函数可以传三个参数

第i(参数1)第j(参数2)列存入内容(参数3)

合并单元格并写入内容:

最后使用f.save(‘demo')

就可以把f保存到excel了

C.实战

我们可以先新建一个工作簿,然后往里添加两个sheet,然后查看效果

效果如下,发现表格xlwt_tutorial中有两个sheet。

0040051362-0.jpg

我们开始往sheet中写入内容,不传入style参数

先只使用write函数

效果如下,我们建立了一个3行4列的表格。(write函数行和列值都是从0开始的)

0040052921-1.jpg

下面我们使用write_merge函数来合并单元格并写入

在f.save之前添加一行代码

效果如下,将第2-3行第4列合并

0040051538-2.jpg

2.pythonxd读excel —xlrd常用功能

A.准备工作

安装xlrd :在终端中输入pip install xlrd或者easy_install xlrd

引入xlrd包 :

B.基础教程&实战

打开一个Excel,然后输出所有sheet的名字

输出:[u'葡小萄', u'小葡萄']

得到表格里的所有的sheet

得到sheet中的内容

输出为:

葡小萄 3 4

小葡萄 0 0

.

输出为:

[u'葡萄', 18.0, u'北京电影学院', u'汉语言文学']

[u'学校', u'北京电影学院', u'帝国国王科技大学']

.

输出为:

葡萄

2

3.xlutils 常用功能

A.准备工作

安装xlutils :在终端中输入pip install xlutils或者easy_install xlutils

引入xlutils包 :

B.xlutils中copy功能

我们可能会遇到一个问题,想对一个存储好的Excel进行编辑。

但是xlrd是只读模式,不能进行编写。

而xlwt是只写模式,不能读入Excel文件进行编辑。

我们可以采用xlrd打开一个文档,后采用xlutils中copy功能把文档拷贝,然后进行编辑即可。

输出为:

葡小萄

输出的表格已经改变。

0040051630-3.jpg

PS: 可以看到第二行第四列和第三行第四列合并格已经在COPY的时候被毁掉了。

4.xlwt写Excel时公式的应用

我们写用xlwt写一个表格

打开表格为:

0040051455-4.jpg

我们现在想做的是统计grape的总分和monkey的总分:

在f.save之前加入代码:

输出为:

B2+B3+B4+B5

C2+C3+C4+C5

打开表格为:

0040054614-5.png

5.xlwt写入特定目录(路径设置)

由于代码分层的缘故,使代码整体框架优美。

我们需要把文件写入到特定目录下。

但是由于xlwt中没有直接写入到特定目录的函数。

因此使用shutil.move函数来把文件MOV到特定目录下:

效果图:

0040055024-6.jpg

总结

以上就是本文关于python实现报表自动化详解的全部内容,希望对大家有所帮助。如有不足之处,欢迎留言指出。

原文链接:http://blog.csdn.net/coraline_m/article/details/51357185

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/564195.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sublime Text 3 详细安装教程

Sublime Text 3 详细安装 下载 官网下载地址https://www.sublimetext.com/3 安装 1 . 下载完成之后安装程序自动运行,默认安装路径,不要修改(如果修改安装路径后期需要配置环境变量) 注意:最好使用默认填入的安装…

oracle导出pck文件,Oracle sqlloader自动化导入迁移工具—可批量生成千万控制文件与批处理文件|一键执行(推荐)...

应用介绍一、设计概述与背景:在目前SQL Server数据库和Oracle数据库之间进行数据迁移工作,可以使用多种方案,其中采用文本文件作为数据交换的中间介质,具有如下特点:1、各个主流数据库都支持文本文件的导入、导出功能。…

C++ list,STL list

list 是顺序容器的一种。list 是一个双向链表。使用 list 需要包含头文件 list。双向链表的每个元素中都有一个指针指向后一个元素,也有一个指针指向前一个元素。 在 list 容器中,在已经定位到要增删元素的位置的情况下,增删元素能在常数时间…

Oracle010316,安装oracle后登录时出现 ERROR: ORA-01031 insufficient privileges

运行环境:在自己笔记本电脑上安装测试操作系统版本:64位win8.1oracle版本:64位 oracle 11g安装oracle 成功后//以管理员身份登录oracle在cmd里输入命令 sqlplus / as sysdba然后 报错 ERROR: ORA-01031 insufficient privileges解决办法&…

sencha app watch php,我的第一个基于SenchaTouch的WebApp

经过进一周的各种折腾,各种想放弃,各种纠结,最终还是顺利的完成了SenchaTouch的开发,回想起来感觉“甜甜的”,也充分体会到Sencha MVC开发模式的好处,以及SenchaTouch.js和Extjs的强大和牛逼,不…

kali linux关闭进程,技术|如何使用 Kali Linux 黑掉 Windows

Kali Linux 派生自 Debian Linux,主要用于渗透测试,拥有超过 300 个的预安装好的渗透测试工具。Metasploit 项目中 Metasploit 框架支持 Kali Linux 平台,Metasploit 是一个用于开发和执行安全利用代码(security exploit)的工具。让我们来使用…

linux 内核 82540网卡,Linux网卡as4.2 编译安装及配置准备

Linux网卡as4.2 编译安装及配置准备[日期:2008-03-28]来源:Linux公社作者:Linux整理[字体:大 中 小]确定make gcc kernel-devel包必须安装,没安装的话需要手动安装查看是否安装方法rpm -aq|gccrpm -aq|makerpm -aq|kernel-devel解…

linux管理进程和计划任务,Linux进程和计划任务管理

本章结构#查看进程#控制进程#at一次性任务设置#crontab周期性任务设置程序和进程的关系#程序保存在硬盘、光盘等介质中的可执行代码和数据静态保存的代码#进程在cpu及内存中运行的程序代码动态执行的代码父、子进程:每个进程可以创建一个或多个进程查看进程ps#ps命令…

less linux命令,less 命令用法详解

less 在 Linux 中用来查看文件,它可以以分页的方式显示文件内容。目前和tail 是用来查看文件的常用命令命令格式less [参数] 文件1、使用示例less a.txt用来查看文件按f 或 space 向下翻一页按b向前翻一页其实很好记f即forward 向前b即backward 向后关键最强大的一点…

linux下软件包清理,Linux运维知识:如何清理Linux系统中的孤立、无用的软件包

本文主要向大家介绍了Linux运维知识的如何清理Linux系统中的孤立、无用的软件包,通过具体的内容向大家展现,希望对的大家学习Linux运维知识有所帮助。在Linux下安装软件,通常会自动安装一些依赖包或库。在你卸载某个软件后,这个软…

linux 多个定时器,timer: 一个Linux下的超级精简的多重定时器:可实现成千上万个定时任务,定时精度可达纳秒级别,且同一时间点可添加不同的任务!适用于云后台服务和嵌入式等各种环境。...

MT_Timer(MT译为Multiple或Multi)一、介绍一个Linux下的超级简洁的定时器:利用epoll机制和timerfd新特性实现的多重、多用、多个定时任务实现。只需要使用TIMER_CREATE()接口创建一个定时器实体,即可向其添加成千上万个定时任务,定时任务可达…

C++文件类

C 标准类库中有三个类可以用于文件操作,它们统称为文件流类。这三个类是: ifstream:用于从文件中读取数据。ofstream:用于向文件中写人数据。fstream:既可用于从文件中读取数据,又可用于 向文件中写人数据。…

window10内核Linux,windows 10中发布完整的Linux内核

5月8日消息: 近年来,微软对Linux开发者社区的支持令许多人感到惊讶,包括将诸如Bash shell之类的东西引入到Windows,或者在Windows 10中支持原生OpenSSH,甚至包括Windows应用商店上架了Ubuntu、SUSE Linux和Fedora。现在…

C++ open 打开文件

在对文件进行读写操作之前,先要打开文件。打开文件有以下两个目的: 1 . 通过指定文件名,建立起文件和文件流对象的关联,以后要对文件进行操作时,就可以通过与之关联的流对象来进行。 2 . 指明文件的使用方式。使用方…

c语言scanf函数隐藏的缓冲区,零基础学C语言 笔记四 Scanf函数清除缓冲区

Scanf函数清除缓冲区之前涉及到scanf会先到缓冲区看看是否存在数据,若存在数据,就直接拿缓冲区的数据过来使用,这就涉及到了一个问题,那如果缓冲区的数据不是我想要的呢?方法一:我们用scanf吸收掉我们的代码…

C++ 流类和流对象

程序中常用的 cin 和 cout,分别用于从键盘输入数据和向屏幕输出数据(简称为标准 I/O)。除此之外,程序还可以从文件中读入数据,以及向文件中写入数据(简称为文件 I/O)。 数据输入和输出的过程也是数据传输的…

C++ cout格式化输出

希望按照一定的格式进行输出,如按十六进制输出整数,输出浮点数时保留小数点后面两位,输出整数时按 6 个数字的宽度输出,宽度不足时左边补 0,等等。C 中的 cout 对象则使用流操作算子(你也可以叫做格式控制符…

C语言按各科分数段统计人数,(更新啦)学校学生成绩统计通用模板(科目、分数、统计分数段等均可自定,班级数、学生人数不受限制)...

更新说明:1、增加了导入、导出数据功能。2、该功能可以实现版本更新时不用手动复制数据,可实现一键导入导出。导语微信号☞gdpc-service这是一款适用于学校平时统一考试成绩统计表。这是长期根据学校的需求设计出的成绩统计,学生成绩清晰明了…

ndows10同时打印多份文档,Windows10如何同时重命名多个文件

在Win10系统中整理重要文件时,很多用户都会对文件进行重命名,以便节省更多的时间。而如果文件数量非常多的话,我们就需要对其进行批量重命名。那么,这该如何操作呢?今天,小编就给大家分享一下Win10系统同时…

C语言数理逻辑题目,数学逻辑推理题整理,看看你能答对多少

年龄的秘密A、B、C三人的年龄一直是一个秘密.将A的年龄数字的位置对调一下,就是B的年龄;C的年龄段两倍是A与B两个年龄的差数;而B的年龄是C的10倍.请问:A、B、C三人的年龄各是多少?失误的程序员高先生是一个高级程序员,但是他最近设计的三款机器人却出了…