0

0

python XlsxWriter模块创建aexcel表格

不言

不言

发布时间:2018-05-04 15:45:12

|

2558人浏览过

|

来源于php中文网

原创

这篇文章主要介绍了关于python xlsxwriter模块创建aexcel表格,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

安装使用pip install XlsxWriter来安装,Xlsxwriter用来创建excel表格,功能很强大,下面具体介绍:

1.简单使用excel的实例:

#coding:utf-8
import xlsxwriter

workbook = xlsxwriter.Workbook('d:\\suq\\test\\demo1.xlsx') #创建一个excel文件
worksheet = workbook.add_worksheet('TEST') #在文件中创建一个名为TEST的sheet,不加名字默认为sheet1
 
worksheet.set_column('A:A',20) #设置第一列宽度为20像素
bold = workbook.add_format({'bold':True}) #设置一个加粗的格式对象
 
worksheet.write('A1','HELLO') #在A1单元格写上HELLO
worksheet.write('A2','WORLD',bold) #在A2上写上WORLD,并且设置为加粗
worksheet.write('B2',U'中文测试',bold) #在B2上写上中文加粗
 
worksheet.write(2,0,32) #使用行列的方式写上数字32,35,5
worksheet.write(3,0,35.5) #使用行列的时候第一行起始为0,所以2,0代表着第三行的第一列,等价于A4
worksheet.write(4,0,'=SUM(A3:A4)') #写上excel公式
worksheet.insert_image('B5','f:\\1.jpg') #插入一张图片
 
workbook.close()

2.常用方法说明

立即学习Python免费学习笔记(深入)”;

1.Workbook类

Workbook类创建一个XlsxWriter的Workbook对象,代表整个电子表格文件,存储到磁盘上.

add_worksheet():用来创建工作表,默认为sheet1

add_format():创建一个新的格式对象来格式化单元格,例如bold=workbook.add_format({'bold':True})

还可以使用set_bold,例如:bold=workbook.add_format() bold.set_bold()

#border:边框,align:对齐方式,bg_color:背景颜色,font_size:字体大小,bold:字体加粗
top = workbook.add_format({'border':1,'align':'center','bg_color':'cccccc','font_size':13,'bold':True})

add_chart(options):创建一个图表对象,内部是使用insert_chart()方法来实现的,options(dict类型)为图表指定一个字典属性

close():关闭文件

2.Worksheet类

worksheet代表一个Excel的工作表,是XlsxWriter的核心,下面是几个核心方法

write(row,col,*args):写普通数据到工作表的单元格,row行坐标,col列坐标,起始都是以0开始,*args为写入的内容,可以是字符串,文字,公式等,writer方法已经作为其它更具体数据类型方法的别名

write_string():写入字符串类型,worksheet.write_string(0,0,'your text')

write_number():写入数字类型,worksheet.write_number('A2',1.1)

write_blank():写入空类型数据,worksheet.write_blank('A2',None)

wirte_formula():写入公式类型,worksheet.write_formula(2,0,'=SUM(B1:B5))

write_datetime():写入日期类型数据,worksheet.write_datetime(7,0,datetime.datetime.strptime('2014-01-02','%Y-%m-%d),workbook.add_format({'num_format':'yyyy-mm-dd'}));

write_boolean():写入逻辑类数据,worksheet.write_boolean(0,0,True)

write_url():写入超链接类型数据,worksheet.write_url('A1','ftp://www.python.org')

write_column():写入到一列,后面接一个数组

wirte_row():写入到一行,后面接一个数组

set_row(row,height,cell_format,options):此方法设置行单元格的属性,row指定行位置,height指定高度,单位是像素,cell_format

指定格式对象,参数options设置hiddeen(隐藏),level(组合分级),collapsed(折叠,例如:

cell_format=workbook.add_format({'bold':True})

worksheet.set_row(0,40,cell_format) 设置第一行高40,加粗

set_column(first_col,last_col,width,cell_format,options):

设置列单元格的属性,具体参数说明如上.worksheet.set_column(0,1,10) worksheet.set_column('C:D',20)

insert_image(row,col,image[,options]):此方法是插入图片到指定单元格

例如插入一个图片的超链接为www.python.org

worksheet.insert_image('B5','f:\1.jpg',{'url':'http://www.python.org'})

情感家园企业站5.0 多语言多风格版
情感家园企业站5.0 多语言多风格版

一套面向小企业用户的企业网站程序!功能简单,操作简单。实现了小企业网站的很多实用的功能,如文章新闻模块、图片展示、产品列表以及小型的下载功能,还同时增加了邮件订阅等相应模块。公告,友情链接等这些通用功能本程序也同样都集成了!同时本程序引入了模块功能,只要在系统默认模板上创建模块,可以在任何一个语言环境(或任意风格)的适当位置进行使用!

下载

3.Chart类

Chart类实现XlsxWriter模块中的图标组件的基类,支持的图表类型包括面积,条形图,柱形图,折形图,饼图,散点图,股票和雷达. 一个图表对象是通过Workbook的add_chart方法创建,通过{type,'图表类型'}字典参数指定图表的类型,语句如下:

chart = workbook.add_chart({type,'column'}) #创建一个column图表

更多图表类型说明:

area:创建一个面积样式的图表;

bar:创建一个条形样式的图表;

column:创建一个柱形样式的图表;

line:创建一个线条样式的图表

pie:创建一个饼图样式的图表

scatter:创建一个散点样式的图表

stock:创建一个股票样式的图表;

radar:创建一个雷达央视的图表

然后通过insert_chart()方法插入到指定的位置,语句如下:

worksheet.insert_chart('A7',chart)

chart.add_series(options)方法,作用是添加一个数据系列到图表,参数options(dict类型)设置图表系列选项的字典,操作示例如下:

chart.add_series({
'categories':'=Sheet1!$A$$1:$A$5',
'values':'=Sheet1!$A$$1:$A$5',
'line':={'color':'red'}
})

categories,values,line最为常用,categories作用是设置图表类别标签范围;values是设置图表数据范围,line为设置图表线条属性,包括颜色宽度等.

set_x_axis(options):设置图表X轴选项,例如:

chart.set_x_axis({
'name':'EARNING per quarter',
'name_font':{'size':14,'bold':True},
'num_font':{'italic':True}
})

set_size(options):设置图表的大小,如

chart.set_size({'width':720,'height':576})

set_title(options):设置标题,如chart.set_title({'name':'TEST TITLE'}

set_style(style_id):设置图表样式,

set_table(options):设置x轴为数据表格式

下面是一个创建文件系统使用率的实例:

#coding:utf-8
 
import xlsxwriter
 
workbook = xlsxwriter.Workbook('d:\\suq\\test\\demo1.xlsx') #创建一个excel文件
worksheet = workbook.add_worksheet('sheet1') #在文件中创建一个sheet
#border:边框,align:对齐方式,bg_color:背景颜色,font_size:字体大小,bold:字体加粗 
top=workbook.add_format({'border':6,'align':'center','bg_color':'cccccc','font_size':13,'bold':True}) #设置单元格格式
title=[u'文件系统',u'总容量',u'使用大小',u'剩余大小'] #设置第一行标题信息
buname=['/dev/mapper/vg_basic-lv_root','tmpfs','/dev/sda1'] #设置左边第一排信息
 
worksheet.write_row('A1',title,top)
worksheet.write_column('A2',buname,top)
worksheet.set_column('A:D',40) #A到D列设置宽度,宽度设置必须是整列设置,高度必须是整行设置
#worksheet.set_row(0,40) #设置第一行高度为40像素
format_data=workbook.add_format({'align':'center','font_size':13}) #设置单元格格式
 
data=[[17678,4393,12388],[9768,8900,868],[24285,2715,21000]] #模拟文件系统的数据,data[0],[1],[2]分别表示全部空间,使用空间,剩余空间
worksheet.write_row('B2',data[0],format_data) #将数据写入,这里安装整行写入
worksheet.write_row('B3',data[1],format_data)
worksheet.write_row('B4',data[2],format_data)
 
chart=workbook.add_chart({'type':'column'}) #创建表格,表格类型为column
chart.set_title({'name':u'文件系统使用率'}) #设置表格的title
for i in ['B','C','D']:
chart.add_series({
'categories': 'sheet1!$A$2:$A$4',
'values':'sheet1!$'+i+'$2:$'+i+'$4',
'name':'=sheet1!$'+i+'$1'
})
#注意上面的表格中,每一行的数据在图中会显示在一起,也就是说values为B2:B4
 
chart.set_size({'width':800,'height':500}) #设置表格的大小
chart.set_y_axis({'name': 'MB'}) #设置表格y轴信息
#chart.set_style(33) #设置表格的样式
worksheet.insert_chart('A8',chart) #插入表格
workbook.close()

显示的图片结果如下:

相关推荐:

使用python实现XlsxWriter创建Excel文件并编辑

使用python3+xlrd解析Excel的实例

相关文章

WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
PS使用蒙版相关教程
PS使用蒙版相关教程

本专题整合了ps使用蒙版相关教程,阅读专题下面的文章了解更多详细内容。

23

2026.01.19

java用途介绍
java用途介绍

本专题整合了java用途功能相关介绍,阅读专题下面的文章了解更多详细内容。

11

2026.01.19

java输出数组相关教程
java输出数组相关教程

本专题整合了java输出数组相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.19

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

2

2026.01.19

xml格式相关教程
xml格式相关教程

本专题整合了xml格式相关教程汇总,阅读专题下面的文章了解更多详细内容。

4

2026.01.19

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

13

2026.01.19

微信聊天记录删除恢复导出教程汇总
微信聊天记录删除恢复导出教程汇总

本专题整合了微信聊天记录相关教程大全,阅读专题下面的文章了解更多详细内容。

93

2026.01.18

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

112

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

155

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 6.1万人学习

Django 教程
Django 教程

共28课时 | 3.3万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号