1、xlsxwriter模块介绍:主要用来生成excel表格,插入数据、插入图标等表格操作

如下代码:目的是往demo01.xlsx插入数据和图片

  1. # 导入xlsxwriter模块:主要用来修改表格的数据
  2. import xlsxwriter
  3. target_xlsx="D:/360Downloads/Software/py/demo01.xlsx"
  4. # 创建工作簿
  5. workbook=xlsxwriter.Workbook(target_xlsx)
  6. # 创建工作表
  7. worksheet=workbook.add_worksheet()
  8. # 设置工作簿的格式
  9. font=workbook.add_format({"font_size": 14})
  10. # 设置工作表的列宽
  11. worksheet.set_column=("A:A",20)
  12. # 写值
  13. worksheet.write(0,0,"Hello",font)
  14. # 写值
  15. worksheet.write(0,1,"World",font)
  16. # 写值
  17. worksheet.write(2,0, "",font)
  18. # 写值
  19. worksheet.write(3, 0, "123.456", font)
  20. # 插入一张照片
  21. worksheet.insert_image("B5", "D:/360Downloads/1.jpg")
  22. # 关闭工作簿
  23. workbook.close()

结果:

或者如下代码:

  1. # 导入xlsxwriter模块
  2. import xlsxwriter
  3. # 目标文件
  4. target_xlsx="D:/360Downloads/test01.xlsx"
  5. # 创建工作簿
  6. workbook=xlsxwriter.Workbook(target_xlsx)
  7. # 创建名叫person的工作表
  8. worksheet=workbook.add_worksheet("person")
  9. # 设置工作簿的格式
  10. font=workbook.add_format({"font_size": 14})
  11. # 设置工作表的列宽
  12. worksheet.set_column=("A:A",20)
  13. # 设置表头
  14. headings=["number","name","age"]
  15. # 自己造的数据
  16. data=[
  17. [1,2,3],
  18. ["Mr_choa","Mr_lai","Mr_z"],
  19. [24,14,48]
  20. ]
  21. # 表头按行写入数据
  22. worksheet.write_row(0,0,headings)
  23. #造的数据按列写入数据
  24. worksheet.write_column("A2",data[0])
  25. worksheet.write_column("B2",data[1])
  26. worksheet.write_column('C2',data[2])
  27. # 关闭文件流,要注意关闭Excel表格,不然报错
  28. workbook.close()

打开test01.xlsx,结果:

运行代码,如果有xlsxwriter.exceptions.FileCreateError: [Errno 13] Permission denied: 'D:/360Downloads/test01.xlsx'错误,关闭test01.xlsx表格再运行就不会报错。

在xlsxwriter模块中设置单元格的格式:

无论是

  1. workfomat=workbook.add_format(
  2. {
  3. # 字体加粗
  4. 'bold':True,
  5. # 单元格边框宽度
  6. 'border':1,
  7. # 字体对齐方式
  8. 'align':'center',
  9. # 单元格背景颜色
  10. 'fg_color':'#F4B084',
  11. # 字体大小
  12. 'font_size':14
  13. }
  14. )

或是通过创建fomat对象:

  1. # 创建一个workfomat对象
  2. workfomat=workbook.add_format()
  3. # 字体加粗
  4. workfomat.set_bold(True)
  5. # 设置边框宽度
  6. workfomat.set_border(1)
  7. # 对齐方式:中心对齐
  8. workfomat.set_align('center')
  9. # 设置背景颜色
  10. workfomat.fg_color('blue')
  11. # 设置背景颜色
  12. workfomat.bg_color('red')

2、xlrd模块介绍:xlrd就是读Excel表

如下代码:目的在读取两个源文件的数据,再写入另外一个表格中

  1. # 导入xlrd模块:读取源文件的数据
  2. import xlrd
  3. # 导入xlsxwriter模块:修改表格的数据
  4. import xlsxwriter
  5. # 源文件
  6. source_xls = ["D:/360Downloads/1.xlsx", "D:/360Downloads/2.xlsx"]
  7. # 目标文件
  8. target_xls = "D:/360Downloads/3.xlsx"
  9. # 从源文件中读取数据
  10. data = []
  11. for i in source_xls:
  12. wb = xlrd.open_workbook(i)
  13. for sheet in wb.sheets():
  14. for rownum in range(sheet.nrows):
  15. data.append(sheet.row_values(rownum))
  16. print(data)
  17. # 创建工作簿写入数据
  18. workbook = xlsxwriter.Workbook(target_xls)
  19. # 创建工作表
  20. worksheet = workbook.add_worksheet()
  21. # 设置工作簿的格式
  22. font = workbook.add_format({"font_size":14})
  23. # 写入数据,遍历工作表的数据个数
  24. for i in range(len(data)):
  25. # 遍历工作表数据的长度
  26. for j in range(len(data[i])):
  27. # 写入数据
  28. worksheet.write(i, j, data[i][j], font)
  29. # 添加数据
  30. worksheet.write(4,0,"haha",font)
  31. # 关闭文件流,要注意关闭Excel表格,不然报错
  32. workbook.close()

源文件1.xlsx:

源文件2.xlsx:

结果得到3.xlsx:

3、在excel中插入折线图

在表格中插入数据,并且插入折线图。

  1. # 导入xlsxwriter模块
  2. import xlsxwriter
  3. # 目标文件
  4. target_xlsx="D:/360Downloads/test01.xlsx"
  5. # 创建工作簿
  6. workbook=xlsxwriter.Workbook(target_xlsx)
  7. # 创建名叫person的工作表
  8. worksheet=workbook.add_worksheet("person")
  9. # 设置工作簿的格式
  10. font=workbook.add_format({"font_size": 14})
  11. # 设置工作表的列宽
  12. worksheet.set_column=("A:A",20)
  13. # 设置表头
  14. headings=["name","testA","testB"]
  15. # 自己造的数据
  16. data=[
  17. ["Mr_choa","Mr_lai","Mr_z",'Mr_r',"Mr_d"],
  18. [90,80,70,87,56],
  19. [100,50,40,45,68]
  20. ]
  21. # 表头按行写入数据
  22. worksheet.write_row(0,0,headings)
  23. #造的数据按列写入数据
  24. worksheet.write_column("A2",data[0])
  25. worksheet.write_column("B2",data[1])
  26. worksheet.write_column('C2',data[2])
  27. # 创建折线图
  28. workchart=workbook.add_chart({'type':'line'})
  29. # 给图表设置格式
  30. workchart.add_series(
  31. {
  32. # 折线名称
  33. 'name':'=person!$B$1',
  34. 'categories':'=person!$A$2:$A$6',
  35. # 折线的值
  36. 'values':'=person!$B$2:$B$6',
  37. # 折线颜色
  38. 'line':{'color':'red'}
  39. }
  40. )
  41. workchart.add_series(
  42. {
  43. # 折线名称
  44. 'name':'=person!$C$1',
  45. 'categories':'=person!$A$2:$A$6',
  46. # 折线的值
  47. 'values':'=person!$C$2:$C$6',
  48. # 折线的颜色
  49. 'line':{'color':'blue'}
  50. }
  51. )
  52. # 设置图表的表头
  53. workchart.set_title({'name':'测试'})
  54. workchart.set_x_axis({'name':'x轴'})
  55. workchart.set_y_axis({'name':'y轴'})
  56. # 设置图表样式类型
  57. workchart.set_style(1)
  58. # 设置图表的位置
  59. worksheet.insert_chart('A10',workchart,{'x_offset':25,'y_offset':10})
  60. # 关闭文件流,要注意关闭Excel表格,不然报错
  61. workbook.close()

结果:

4、图表的type

area:面积图

bar:直方图

column:柱形图

line:折线图

pie:饼图

doughnut:环形图

scatter:散点图

stock:股票趋势图

rader:雷达图

5、表格的一些操作(合并单元格)

  1. #合并单元格
  1. worksheet.merge_range('D1:D7','合并单元格')

使用xlsxwriter模块和xlrd模块操作Excel表格的更多相关文章

  1. xlrd》操作excel 出现的问题:File "D:\python37\lib\site-packages\xlrd\formula.py", line 1150, in evaluate_name_formula assert len(tgtobj.stack) == 1

    xlrd>操作excel  出现的问题 报错如下: D:\python37\python.exe D:/testWang/waimai/tools/get_excelData.py*** for ...

  2. 【转】python操作excel表格(xlrd/xlwt)

    [转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...

  3. 转载:python操作excel表格(xlrd/xlwt)

    python操作excel表格(xlrd/xlwt)   最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而 ...

  4. 使用python操作excel表格

    首先 pip install xlrd  安装相关模块 其次:使用方法: 1 导入模块 import xlrd 2 打开excel文件读取数据 worksheet=xlrd.open_workbook ...

  5. python - 操作excel表格

    说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...

  6. qt 操作excel表格

     自己编写的一个Qt C++类,用于操作excel表格,在Qt中操作excel需在.pro中增加CONFIG+=qaxcontainer配置. 1.打开Excel:objExcel = new QAx ...

  7. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  8. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  9. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

  10. 用NPOI、C#操作Excel表格生成班级成绩单

    在C#中利用NPOI操作Excel表格非常方便,几乎上支持所有的Excel表格本身所有的功能,如字体设置.颜色设置.单元格合并.数值计算.页眉页脚等等. 这里准备使用NPOI生成一个班级成绩单Exce ...

随机推荐

  1. 前端解决跨域问题的终极武器——Nginx反向代理

    提到代理,分为:正向代理和反向代理. 正向代理:就是你访问不了Google,但是国外有个VPN可以访问Google,你访问VPN后叫它访问Google,然后把数据传给你. 正向代理隐藏了真实的客户端. ...

  2. oracle的wm_concat函数实现行转列

    有以下数据 deptname phone username isboss 部门A 电话1 员工A 0 部门A 电话1 领导A 1 部门B 电话2 员工B 0 部门B 电话2 员工C 0 部门B 电话2 ...

  3. Linux环境下安装MySQL 5.7.28

    先进入MySQL官网: www.mysql.com 去下载安装包 进入DOWNLOADS选项,点击MySQL Community (GPL) Downloads. 点击进入MySQL Communit ...

  4. Android 版的多合一Office应用也正式向iOS开放了

    导读 在 Android 版的多合一 Office 应用「偷跑」不久后(官方证实上线时间比计划要早),为 iOS 准备的版本现在终于也结束 beta 测试正式上线了. 和只提供「有限」平板支持的 An ...

  5. 3L-最好、最坏、平均、均摊时间复杂度

    关注公众号 MageByte,设置星标点「在看」是我们创造好文的动力.后台回复 "加群" 进入技术交流群获更多技术成长. 本文来自 MageByte-青叶编写 上次我们说过 时间复 ...

  6. 五分钟学Java:如何学习Java面试必考的JVM虚拟机

    原创声明 本文首发于微信公众号[程序员黄小斜] 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 为什么要学习JVM虚拟机 最近的你有没有参加Java面试呢?你有没有发现,Java ...

  7. juery 实现选项卡

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 【转】sublime text 2中Emmet插件8个常用的技巧

    因为开始做web项目,所以最近在用sublime编辑器,知道了一个传说中的emmet,原名是zen coding.html神插件可以说是.文章部分内容转自http://www.cnblogs.com/ ...

  9. Python基础篇(一)_基本语法元素

    Python基础篇——基本语法元素 缩进:体现强制可读性,一般缩进4个空格.一个或多个Tab 注释:单行注释----以 # 开头 多行注释----每行以 # 开头,以 # 结束 变量:无须提前声明.可 ...

  10. 使用ASP.NET MVC 5快速实现芒果分销后台管理系统(前言)

    ### 前言 在前一篇文章中,我提到最近要陆续为大家写一些.Net实战技术文章.从今天起,我将围绕一个入门级现实的芒果分销管理系统案例,使用ASP.NET MVC 5,从前端到后端,一步一步为大家呈现 ...