python(xlsxwriter模块使用)
XlsxWriter简介
XlsxWriter是一个Python模块,可用于在Excel 2007+ XLSX文件中写入多个工作表的文本,数字,公式和超链接。它支持格式化等功能。可到官网了解更多详情,官网链接:https://xlsxwriter.readthedocs.io/
安装XlsxWriterd
pip install XlsxWriter
1
实例1:创建一个xlsx文件,并写入内容
import xlsxwriter
# 创建工作簿并添加工作表
workbook = xlsxwriter.Workbook('demo1.xlsx')
worksheet = workbook.add_worksheet()
# 写入数据到A1
worksheet.write('A1', 'Hello world')
# 关闭excel文件
workbook.close()
实例2:xlsx的的简单应用
假设我们有一些关于我们想要转换为Excel XLSX文件的月度支出的数据:
expenses = (
['Rent', 1000],
['Gas', 100],
['Food', 300],
['Gym', 50],
)
要做到这一点,我们可以从一个小程序开始,如下所示:
import xlsxwriter
# 创建工作簿并添加工作表。
workbook = xlsxwriter.Workbook('Expenses01.xlsx') # 设置输出路径为当前目录下
worksheet = workbook.add_worksheet()
# 下面是我们想要写入工作表的一些数据。
expenses = (
['Rent', 1000],
['Gas', 100],
['Food', 300],
['Gym', 50],
)
# 从第一个单元格开始。行和列为零索引。
row = 0
col = 0
# 迭代数据并逐行写出。
for item, cost in (expenses):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, cost)
row += 1
# 使用公式计算总和。
worksheet.write(row, 0, 'Total')
worksheet.write(row, 1, '=SUM(B1:B4)')
# 不要忘记关闭文件
workbook.close()
运行程序后,我们可以在刚刚设置的目录下找到‘Expenses01.xlsx’文件。
Expenses01.xlsx 打开后如下图所示:
实例3:向xlsx文件添加格式
在上一节中,我们使用Python和XlsxWriter模块创建了一个简单的电子表格。
这将所需的数据转换为Excel文件,但看起来有点光鲜。为了使信息更清晰,我们想添加一些简单的格式,如下所示:
重点观察注释部分即可,大部分代码与实例2相同,对比实例2与实例三的异同
import xlsxwriter
workbook = xlsxwriter.Workbook('Expenses02.xlsx')
worksheet = workbook.add_worksheet()
# 使用add_fromat方法设置单元格的格式
bold = workbook.add_format({'bold': True}) # 添加粗体格式
money = workbook.add_format({'num_format': '$#,##0'}) # 添加数字格式
# 在worksheet的write方法中的第三个参数写上刚刚设置的格式参数,即可为单元格填充格式
worksheet.write('A1', 'Item', bold) # 设置标题栏为粗体
worksheet.write('B1', 'Cost', bold)
expenses = (
['Rent', 1000],
['Gas', 100],
['Food', 300],
['Gym', 50],
)
row = 1
col = 0
for item, cost in (expenses):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, cost, money) # 设置数字格式
row += 1
worksheet.write(row, 0, 'Total', bold)
worksheet.write(row, 1, '=SUM(B2:B5)', money)
workbook.close()
1、xlsxwriter模块的简单使用:
xlsxwriter模块主要用来生成excel表格,插入数据、插入图标等表格操作。
1.1 基本功能
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
import xlsxwriter #导入模块 workbook = xlsxwriter.Workbook( 'new_excel.xlsx' ) #新建excel表 worksheet = workbook.add_worksheet( 'sheet1' ) #新建sheet(sheet的名称为"sheet1") headings = [ 'Number' , 'testA' , 'testB' ] #设置表头 data = [ [ '2017-9-1' , '2017-9-2' , '2017-9-3' , '2017-9-4' , '2017-9-5' , '2017-9-6' ], [ 10 , 40 , 50 , 20 , 10 , 50 ], [ 30 , 60 , 70 , 50 , 40 , 30 ], ] #自己造的数据 worksheet.write_row( 'A1' ,headings) worksheet.write_column( 'A2' ,data[ 0 ]) worksheet.write_column( 'B2' ,data[ 1 ]) worksheet.write_column( 'C2' ,data[ 2 ]) #将数据插入到表格中 workbook.close() #将excel文件保存关闭,如果没有这一行运行代码会报错 |
查看生成excel的结果:
1.2 将excel中插入折线图
生成图表如下图
2、xlsxwriter模块常用功能介绍:
2.1、设置单元格的格式:
2.1.1、通过字典的方式直接设置格式。
1 workfomat = workbook.add_format({
2 'bold': True, #字体加粗
3 'border':1, #单元格边框宽度
4 'align': 'center', #对齐方式
5 'valign': 'vcenter', #字体对齐方式
6 'fg_color': '#F4B084', #单元格背景颜色
7 })
2.1.2、通过format对象的方式设置单元格格式。
1 workfomat = workbook.add_format()
2 workfomat.set_bold(1) #设置边框宽度
3 workfomat.set_num_format('0.00') #格式化数据格式为小数点后两位
4 workfomat.set_align('center') #设置对齐方式
5 workfomat.set_fg_color('blue') #设置单元格背景颜色
6 workfomat.set_bg_color('red') #设置单元格背景颜色 (经测试和上边的功能一样)
2.1.3、一些单元表的操作,像这样的操作还有好多,可以根据自己的需要去进行研究。
1 worksheet.merge_range('D1:D7','合并单元格') #合并单元格
2 worksheet.set_tab_color('red') #设置sheet标签颜色
3 worksheet.set_column('A:D',25) #设置A到D列的列宽为25
4 worksheet.write_formula('E2','=B2/C2') #设置表格中的计算,‘E2’是计算结果,'=B2/C2'是计算公式
2.2、常用图表类型:
1 #area:面积图
2 #bar:直方图
3 #colume:柱状图
4 #line:折线图
5 #pie:饼图
6 #doughnut:环形图
7 #sactter:散点图
8 #stock:股票趋势图
9 #radar:雷达图
python(xlsxwriter模块使用)的更多相关文章
- 通过python xlsxwriter模块生成EXCEL柱状图、饼图
xlsxwriter模块不是python自带的,使用pip下载 import xlsxwriter #新建一个excel文件,起名为expense01.xlsx workbook = xlsxwrit ...
- python XlsxWriter模块创建aexcel表格
https://blog.csdn.net/qq_41030861/article/details/82148777 安装使用pip install XlsxWriter来安装,Xlsxwriter用 ...
- Python——xlsxwriter模块的使用
xlsxwriter是用于制作Excel表格的 安装方法 40 wget https://pypi.python.org/packages/e4/63/e53deacc293c7fadf95b8404 ...
- 004、Python xlsxwriter模块
简单用法demo # !/usr/bin/python # coding:utf-8 # xlsxwriter的基本用法 import xlsxwriter # 1. 创建一个Excel文件 work ...
- Python xlsxwriter模块
1.简介: xlsxWriter支持多种excle功能:与excel完美兼容:写大文件,速度快且只占用很小的内存空间不支持读或者改现有的excel文件 2.安装: pip install xlsxwr ...
- python通过xlsxwriter模块将文字写入xlsx文件
#今天和大家一起学习通过python的xlsxwriter模块 xlsxwriter模块主要用来生成excel表格,插入数据.插入图标等表格操作等. 环境:python 3 1)安装 xlsxwrit ...
- $用python处理Excel文档(2)——用xlsxwriter模块写xls/xlsx文档
Refer:<python自动化运维:技术与最佳实践> 更多用法参考xlsxwriter官方文档:http://xlsxwriter.readthedocs.io/ 本文主要总结一下如何使 ...
- python xlwt 与 xlsxwriter 模块差别
Xlwt 模块有一个bug, 就是所用样式过多的话,之后的数据将使用不了样式,相反xlsxwriter 模块 不会有此问题. 用Xlwt模块的同学们,请务必转换用xlsxwriter模块 !!!!!! ...
- Python(五)模块
本章内容: 模块介绍 time & datetime random os sys json & picle hashlib XML requests ConfigParser logg ...
随机推荐
- Python之浅谈多态和封装
目录 组合 什么是组合 为什么使用组合 多态和多态性 多态 什么是多态? 多态性 好处 多态性 什么是多态性 封装 封装是什么意思? 隐藏 如何用代码实现隐藏 python 实际上是可以访问隐藏属性的 ...
- JavaWeb项目在浏览器点击几次就阻塞了
问题描述 在学习JavaWeb项目时,通过IDE启动项目后,在浏览器点击几次页面中的链接就阻塞了,浏览器一直转圈圈无法加载,后台日志也没有输出. 第一次遇见这种情况,没有日志完全无法分析到底是什么问题 ...
- 大厂程序员因厌恶编程,辞去月薪2w+的工作去当司机?
世界好小啊,刚在一个 UP 主的群里看到一个视频,标题叫做:"失业了工作没找到,却稀里糊涂上了知乎热搜,2000 多万人围观,我--" 说实话,看到视频的封面,我的下巴当时就掉到了 ...
- Python Java 快速配置环境变量(Path)
Python Java 快速配置环境变量(Path) 最近系统被重置,清空了C盘中的program等文件夹以及初始化了环境变量. 通常环境下,在windows环境中我们都会打开"环境变量&q ...
- UVA11300 Spreading the Wealth 题解
题目 A Communist regime is trying to redistribute wealth in a village. They have have decided to sit e ...
- request.headers.get头部获取内容的缺失
1.说明 今天遇到了一个小坑,在做权限控制的时候,用头部传递了参数取名为table_privilege_id, 在本地测试的时候是可以接到这个参数的,但是通过ngxin转发之后,奇怪了,怎么也拿不到这 ...
- java学习第二天 20207/7
一. 1.对传参进行了了解 2. 2.java的变量命名与c/c++有些不同在java中有¥,字母,下划线和数字,同样不可以是数字开头. java的布尔型为boolean 各个数据类型的信息: 注意: ...
- day29 作业
1.引入属性访问控制+property 2.引入继承与派生的概念来减少代码冗余 注意:要满足什么"是"什么的关系,不满足"是"的关系不要去继承 import u ...
- DRS是啥你都不知道?不是吧,不是吧
前言 最近写了很多数据库相关的文章,大家基本上对数据库也有了很多的了解,数据库本身有所了解了,我们是不是应该回归业务本身呢? 大家去了解过自己企业数据库的部署方式么?是怎么部署的,又是部署在哪里的?部 ...
- vue组件通讯之provide / inject
什么是 provide / inject [传送门] vue的组件通讯方式我们熟知的有 props $emit bus vuex ,另外就是 provide/inject provide/inject ...