转载原链接: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. swift的类型系统

    顶级抽象:protocol 具体类型:值类型.引用类型 类型操作:扩展 其他: 范型.函数式类型:function.monand

  2. oracle封装OracleHelper

    1.Oracle 封装类 using System; using System.Collections.Generic; using System.Linq; using System.Text; u ...

  3. 做个小插件(打开Part路径插件)

    1 (CAIDAN.men) VERSION EDIT UG_GATEWAY_MAIN_MENUBAR AFTER UG_HELP CASCADE_BUTTON TOOLS LABEL 工具 END_ ...

  4. 分布式系统CAP定理与BASE理论

    CAP定理: 一个分布式系统不可能同时满足一致性(C:Consistency).可用性(A:Availability)和分区容错性(P:Partition tolerance)这三个基本要求,最多只能 ...

  5. 【JZOJ6214】【20190614】tetris

    题目 这是一道和俄罗斯方块有关的有趣题目 底面宽度为\(N\),高度无限,初始时方块高度为\(A_i\) 你可以决定每次会下落一个\(1 \times K\)或者\(K \times 1\)的方块 你 ...

  6. NodeJS基础学习总结

    一.nodeJS解释 JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是 ...

  7. ARC098F Donation

    传送门 Atcoder Solution 首先是几个引理: 重新定义权值\(val_i=max(a_i-b_i,0)\),那么通过这个点必须需要\(val_i+b_i\)的钱. 多次经过一个点一定是在 ...

  8. OpenFOAM——前台阶

    本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL037:Turbulent Flow Over a Forward Facing ...

  9. pm2 启动模式 fork 和 cluster 的区别

    fork模式,单实例多进程,常用于多语言混编,比如php.python等,不支持端口复用,需要自己做应用的端口分配和负载均衡的子进程业务代码. 缺点就是单服务器实例容易由于异常会导致服务器实例崩溃. ...

  10. [1-2] Dependence-Aware Service Function Chain Design and Mapping

    文献名称:Dependence-Aware Service Function Chain Design and Mapping 文献类型(期刊.硕论.博论):会议:Globecom 发表年份:2017 ...