对python中的xlsxwriter库简单分析


Posted in Python onMay 04, 2018

一、xlsxwriter 基本用法,创建 xlsx 文件并添加数据

官方文档:http://xlsxwriter.readthedocs.org/

xlsxwriter 可以操作 xls 格式文件

注意:xlsxwriter 只能创建新文件,不可以修改原有文件。如果创建新文件时与原有文件同名,则会覆盖原有文件

Linux 下安装: sudo pip install XlsxWriter

Windows 下安装: pip install XlsxWriter

# coding=utf-8
from __future__ import division
import sys
import xlsxwriter
import xlrd
import datetime

output_file = u"D:\\python和shell脚本\\10969的代码\\test.xlsx"
wb = xlsxwriter.Workbook(output_file)
ws = wb.add_worksheet(u"活动标签")
ws.set_column('A:A', 20)
ws.set_column('B:B', 20)
ws.set_column('C:C', 20)
ws.set_column('D:D', 20)

ws.write(2, 0, "123")
wb.close()

二、xlsxwriter 格式处理,将待添加数据转换成相应的格式,添加到 xlsx 文件中

先设置格式,使用方法:workbook.add_format

再指定格式写入,使用方法:worksheet.write_string

#!/usr/bin/python
#coding: utf-8
from datetime import datetime
import xlsxwriter
workbook = xlsxwriter.Workbook('Expenses02.xlsx')
worksheet = workbook.add_worksheet()
#设定格式,等号左边格式名称自定义,字典中格式为指定选项
#bold:加粗,num_format:数字格式
bold_format = workbook.add_format({'bold':True})
money_format = workbook.add_format({'num_format':'$#,##0'})
date_format =workbook.add_format({'num_format':'mmmm d yyyy'})
#将二行二列设置宽度为15(从0开始)
worksheet.set_column(1, 1, 15)
#用符号标记位置,例如:A列1行
worksheet.write('A1', 'Item', bold_format)
worksheet.write('B1', 'Cost', bold_format)
worksheet.write('C1', 'Cost', bold_format)
expenses = (
 ['Rent', '2016-03-11', 1000],
 ['Gad', '2016-03-12', 100],
 ['Food', '2016-03-13', 400],
 ['Gym', '2016-03-14', 50],
)
row = 1
col = 0
for item, date_str, cost in (expenses):
 #将数据格式转化为Python datetime.datetime 格式
 #之后用write_datetime方法录入日期格式
 date = datetime.strptime(date_str, "%Y-%m-%d")
 #使用write_string方法,指定数据格式写入数据
 worksheet.write_string(row, col,  item)
 worksheet.write_datetime(row, col + 1, date, date_format)
 worksheet.write_number(row, col + 2, cost, money_format)
 row += 1
worksheet.write(row, 0, 'Total',  bold_format)
worksheet.write(row, 1, '=SUM(B2:B5)', money_format)
workbook.close()

三、xlsxwriter 添加表格,在 xlsx 文件中添加表格

#!/usr/bin/python
#coding: utf-8
import xlsxwriter
workbook = xlsxwriter.Workbook('chart.xlsx')
worksheet = workbook.add_worksheet()
#新建图标对象
chart = workbook.add_chart({'type': 'column'})
#向 excel 中写入数据,建立图标时要用到
data = [
 [1, 2, 3, 4, 5],
 [2, 4, 6, 8, 10],
 [3, 6, 9, 12, 15],
]
worksheet.write_column('A1', data[0])
worksheet.write_column('B1', data[1])
worksheet.write_column('C1', data[2])
#向图表中添加数据,例如第一行为:将A1~A5的数据转化为图表
chart.add_series({'values': '=Sheet1!$A$1:$A$5'})
chart.add_series({'values': '=Sheet1!$B$1:$B$5'})
chart.add_series({'values': '=Sheet1!$C$1:$C$5'})
#将图标插入表单中
worksheet.insert_chart('A7', chart)
workbook.close()

四、更多可用的单元格式对象(Format Class)

ecxel 中每一个单元,都有如下属性:字体(fonts)、颜色(colors)、模式(patterns)、边界(borders)、alignment、number formatting

设置属性:

format = workbook.add_format()
#用对象接口设置格式属性
format.set_bold()
format.set_font_color('red')
#用字典设置格式属性
property = {
 'bold': True,
 'font_color': 'red'
}
format = workbook.add_format(property)

以上这篇对python中的xlsxwriter库简单分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的Classes和Metaclasses详解
Apr 02 Python
Python 3中的yield from语法详解
Jan 18 Python
使用Pyinstaller的最新踩坑实战记录
Nov 08 Python
python基础教程项目二之画幅好画
Apr 02 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
Oct 15 Python
python自定义函数实现一个数的三次方计算方法
Jan 20 Python
PyTorch如何搭建一个简单的网络
Aug 24 Python
Django 实现jwt认证的示例
Apr 30 Python
python保存大型 .mat 数据文件报错超出 IO 限制的操作
May 10 Python
浅谈Python 中的复数问题
May 19 Python
python tqdm用法及实例详解
Jun 16 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
Apr 02 Python
使用实现XlsxWriter创建Excel文件并编辑
May 04 #Python
Python实现获取前100组勾股数的方法示例
May 04 #Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 #Python
Python 中的Selenium异常处理实例代码
May 03 #Python
Python读写/追加excel文件Demo分享
May 03 #Python
windows下安装Python的XlsxWriter模块方法
May 03 #Python
python使用openpyxl库修改excel表格数据方法
May 03 #Python
You might like
php Xdebug 调试扩展的安装与使用.
2010/03/13 PHP
WordPress判断用户是否登录的代码
2011/03/17 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
PHP消息队列用法实例分析
2016/02/12 PHP
jquery 表单下所有元素的隐藏
2009/07/25 Javascript
javascript 窗口加载蒙板 内嵌网页内容
2010/11/19 Javascript
在多个页面使用同一个HTML片段《续》
2011/03/04 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
2012/01/13 Javascript
javascript中方便增删改cookie的一个类
2012/10/11 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
JQuery中使用Ajax赋值给全局变量异常的解决方法
2014/01/10 Javascript
javascript获取浏览器类型和版本的方法(js获取浏览器版本)
2014/03/13 Javascript
JavaScript中property和attribute的区别详细介绍
2015/03/03 Javascript
js简单实现竖向tab选项卡的方法
2015/05/04 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
vue实现图片上传到后台
2020/06/29 Javascript
详解Vue.js 可拖放文本框组件的使用
2021/03/03 Vue.js
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
pandas.DataFrame.to_json按行转json的方法
2018/06/05 Python
python使用Matplotlib绘制分段函数
2018/09/25 Python
python实现简单登陆系统
2018/10/18 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
pytorch打印网络结构的实例
2019/08/19 Python
Python脚本去除文件的只读性操作
2020/03/05 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
js实现弹框效果
2021/03/24 Javascript
公司离职证明范本
2014/01/13 职场文书
文字自荐书范文
2014/02/10 职场文书
签约仪式主持词
2014/03/19 职场文书
2015年实习生工作总结报告
2015/04/28 职场文书
2016社区平安家庭事迹材料
2016/02/26 职场文书