转载原链接:https://www.jianshu.com/p/d685cfaaeef7

1.安装

pip install xlsxwriter

2.操作一个简单的Excel文档

# 引入依赖模块
import xlsxwriter # 数据准备
datas = (
['Rent', 1000],
['Gas', 100 ],
['Food', 300 ],
['Gym', 50 ]
) # 创建一个Excel文档
workbook = xlsxwriter.Workbook('ex01.xlsx')
# 添加一个工作表
worksheet = workbook.add_worksheet() # 设置行和列的偏移
row, col = 0, 0 # 开始添加数据
for item, cost in datas:
# 指定行、列的单元格,添加数据
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()

操作完成后,数据存储结果如下:

  1. 操作简单Excel文档并添加数据格式
# 导入依赖的模块
import xlsxwriter # 数据准备
datas = (
['Rent', 1000],
['Gas', 100 ],
['Food', 300 ],
['Gym', 50 ],
) # 创建表格
workbook = xlsxwriter.Workbook('ex02.xlsx')
worksheet = workbook.add_worksheet('data') # 添加全局格式
bold = workbook.add_format({'bold': True})
# 添加money格式
money = workbook.add_format({'num_format': '$#,##0'}) # 添加表格头,附带格式
worksheet.write('A1', 'Item', bold)
worksheet.write('B1', 'Cost', bold) # 数据表格偏移
row, col = 1, 0
# 添加数据
for item, cost in datas:
# 按照行列单元格添加数据
worksheet.write(row, col, item)
worksheet.write(row, col+1, cost)
row += 1 # 添加一列求和计数
worksheet.write(row, 0, 'Total', bold)
worksheet.write(row, 1, '=SUM(B2:B5)', money) # 存储退出
workbook.close()

操作效果如图所示:

4.Excel中添加不同类型的数据

操作代码如下:将不同的数据按照指定的格式添加到文件中

# 引入依赖的模块
from datetime import datetime
import xlsxwriter # 数据准备
datas = (
['Rent', '2018-05-13', 1000],
['Gas', '2018-05-14', 100],
['Food', '2018-05-16', 300],
['Gym', '2018-05-20', 50],
) # 创建表格
workbook = xlsxwriter.Workbook('ex03.xlsx')
worksheet = workbook.add_worksheet('data') # 添加格式
bold_f = workbook.add_format({'bold': True})
money_f = workbook.add_format({'num_format': '$#,##0'})
# 添加日期格式new
date_f = workbook.add_format({'num_format': 'mmmm d yyyy'}) # 添加对齐方式和表格宽度new
worksheet.set_column(1, 1, 15) # 添加表头数据
worksheet.write('A1', 'Item', bold_f)
worksheet.write('B1', 'Date', bold_f)
worksheet.write('C1', 'Cost', bold_f) # 定义偏移值
row, col = 1, 0
# 添加数据
for item, date, cost in datas:
date = datetime.strptime(date, '%Y-%m-%d')
worksheet.write(row, col, item)
worksheet.write_datetime(row, col+1, date, date_f)
worksheet.write(row, col+2, cost, money_f)
row += 1 # 添加计数
worksheet.write(row, 0, 'Total', bold_f)
worksheet.write(row, 2, '=SUM(C2:C5)', money_f) # 存储并关闭
workbook.close()

代码执行结果如下:



注意:xlsxwriter中提供了向excel中写入数据的多种方式,如下:

write_string()

write_number()

write_blank()

write_formula()

write_datetime()

write_boolean()

write_url()

5.Excel中添加数据图表

操作代码如下:将对应的数据展示图表添加到文件中

# 引入依赖模块
import xlsxwriter # 操作数据
data = [20, 45, 26, 18, 45] # 创建表格
workbook = xlsxwriter.Workbook("ex04.xlsx")
worksheet = workbook.add_worksheet("data") # 添加数据:一次添加多个数据
worksheet.write_column('A1', data) # 创建图表
chart = workbook.add_chart({'type': 'line'})
# 图表添加数据
chart.add_series({
'values': '=data!$A1:$A6',
'name': '图表线名称',
'marker': {
'type': 'circle',
'size': 8,
'border': {'color': 'black'},
'fill': {'color': 'red'}
},
'data_labels': {'value': True},
'trendline': {
'type': 'polynomial',
'order': 2,
'name': '示例趋势线',
'forward': 0.5,
'backward': 0.5,
'display_equation': True,
'line': {'color': 'red', 'width': 1, 'dash_type': 'long_dash'}
}
}) worksheet.insert_chart('C1', chart) workbook.close()

代码执行结果如下图所示:

自动化办公:xlsxwriter操作Excel的更多相关文章

  1. Python自动化办公之操作Excel文件

    模块导入 import openpyxl 读取Excel文件 打开Excel文件 workbook = openpyxl.load_workbook("test.xlsx") 输出 ...

  2. python3使用xlrd、xlwt、xlutils、openpyxl、xlsxwriter操作excel

    特色简介 xlrd主要用来读excel,针对.xls格式: xlwt主要用来写excel,针对.xls格式,超出excel 的单格内容长度上限32767,就会报错: xlutils结合xlrd可以达到 ...

  3. Python自动化办公知识点整理汇总

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...

  4. 自动化办公:python操作Excel

    1.安装 -- upgrade pippython -m pip install --- install pypipip install pypi 执行python setup.py install进 ...

  5. 接口自动化(二)--操作Excel获取需要数据

    这一部分的内容记述一下对Excel表格的操作,本实战中的测试用例是由Excel来管理的,因此操作Excel是重要的一部分. 再次贴出这张图,所有的测试用例都在这个sheet内,请求数据真实存放在jso ...

  6. python办公入门4:xlrd操作excel行

    操作excel行 1 #通过索引获取操作行 2 sheet=data.sheet_by_index(0) 3 #获取当前sheet下的有效行数 4 print(sheet.nrows) 5 #获取某一 ...

  7. Python“文件操作”Excel篇(上)

    大家好,我们今天来一起探索一下用Python怎么操作Excel文件.与word文件的操作库python-docx类似,Python也有专门的库为Excel文件的操作提供支持,这些库包括xlrd.xlw ...

  8. VS2010 C++ 操作Excel表格的编程实现

    转载请注明原文网址: http://www.cnblogs.com/xianyunhe/archive/2011/09/25/2190485.html 通过VC实现对Excel表格的操作的方法有多种, ...

  9. C++ builder 操作Excel方法(据网上资料整理)

    c++ builder 操作Excel方法,下面是从网上找到的一些不错的方法,学习一下: 用OLE操作Excel(目前最全的资料)(04.2.19更新) 本文档部分资料来自互联网,大部分是ccrun( ...

随机推荐

  1. Mac OS X配置环境变量

    转载注明出处:http://www.jianshu.com/p/7e30b7b7ee48 Mac端环境变量配置 Mac使用bash做为默认的shell MAC OS X环境配置的加载顺序 # 系统级别 ...

  2. 2019湖南省赛H题——概率转移&&逆矩阵

    题意 题目链接 Bobo有一个 $n+m$ 个节点的有向图,编号分别为 $1 \sim n$,他还有一个 $n$ 行 $n+m$ 列的矩阵 $P$. 如果在 $t$ 时刻他位于节点 $u(1 \leq ...

  3. A* 第k短路

    #include <cstdio> #include <algorithm> #include <queue> #include <cstring> # ...

  4. ansible部署EFK

    修改自己不确定的配置文件前,先准备备份,防患于未然!!! Environment:{ 目前测试准备三台2m2g虚拟机  详情概略图见EFK的架构图 https://www.cnblogs.com/se ...

  5. 退役III次后做题记录(扯淡)

    退役III次后做题记录(扯淡) CF607E Cross Sum 计算几何屎题 直接二分一下,算出每条线的位置然后算 注意相对位置这个不能先搞出坐标,直接算角度就行了,不然会卡精度/px flag:计 ...

  6. 服务器使用bbr加速配置

    服务器内核升级: 以centos7为例,配置之前可使用以下命令查看内核版本,若是4.0以上则无需对内核升级: uname -r 对内核升级的方法: 直接使用以下命令进行内核版本的下载: rpm --i ...

  7. vuex实现登录状态的存储,未登录状态不允许浏览

    基础思路就是使用vuex状态管理来存储登录状态(其实就是存一个值,例如token),然后在路由跳转前进行登录状态的判断,可以使用vue-router的全局前置守卫beforeEach,也可以使用路由独 ...

  8. Note_3.31

    2019/4/1 奇奇怪怪的笔记 整理了一些之前没有写过的东西,把它们拼在一起,并没有什么逻辑可言qwq FWT快速沃尔什变换 \[ FWT(A)=merge(FWT(A0),FWT(A0+A1)) ...

  9. js逆向分析之acorn和escodegen的使用

    替换之前的d形如 d("77696669") 执行代码 const fs = require('fs'); const acorn = require('acorn'); cons ...

  10. 【技术博客】 关于laravel5.1中文件上传测试的若干尝试

    关于laravel5.1中文件上传测试的若干尝试 作者:ZGJ 版本:v1.0 PM注:本人这两天也正在尝试解决这一问题,如有进展将及时更新这一博客 在我们的软工第二阶段中,我开始着手进行后端控制器的 ...