Xlsx是python用来构造xlsx文件的模块,可以向excel2007+中写text,numbers,formulas 公式以及hyperlinks超链接。

可以完成xlsx文件的自动化构造,包括:

合并单元格,制作excel图表等功能:

1,Introduction:

xlsxWriter支持多种excle功能;与excel完美兼容;写大文件,速度快且只占用很小的内存空间

不支持读或者改现有的excel文件

2, Installing:

sudo pip install XlsxWriter;

sudo easy_install XlsxWriter;

3,使用:

import xlsxwriter

workbook = xlsxwriter.Workbook('hello.xlsx') # 建立文件

worksheet = workbook.add_worksheet() # 建立sheet, 可以work.add_worksheet('employee')来指定sheet名,但中文名会报UnicodeDecodeErro的错误

worksheet.write('A1', 'Hello world') # 向A1写入

workbook.close()

excel公式计算

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

# Some data we want to write to the worksheet.

expenses= (

['Rent',1000],

['Gas',100],

['Food',300],

['Gym',50],

)

# Start from the first cell. Rows and columns are zero indexed. 按标号写入是从0开始的,按绝对位置'A1'写入是从1开始的

row= 0

col= 0

# Iterate over the data and write it out row by row.

for item, costin (expenses):

worksheet.write(row, col,     item)

worksheet.write(row, col+ 1, cost)

row+= 1

# Write a total using a formula.

worksheet.write(row,0,'Total')

worksheet.write(row,1,'=SUM(B1:B4)')# 调用excel的公式表达式

workbook.close()

excel自定义格式:

import xlsxwriter

# 建文件及sheet.

workbook = xlsxwriter.Workbook('Expenses02.xlsx')

worksheet = workbook.add_worksheet()

# Add a bold format to use to highlight cells. 设置粗体,默认是False

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

# Add a number format for cells with money. 定义数字格式

money = workbook.add_format({'num_format': '$#,##0'})

# Write some data headers. 带自定义粗体blod格式写表头

worksheet.write('A1', 'Item', bold)

worksheet.write('B1', 'Cost', bold)

# Some data we want to write to the worksheet.

expenses = (

['Rent', 1000],

['Gas', 100],

['Food', 300],

['Gym', 50],

)

# Start from the first cell below the headers.

row = 1

col = 0

# Iterate over the data and write it out row by row.

for item, cost in (expenses):

worksheet.write(row, col, item) # 带默认格式写入

worksheet.write(row, col + 1, cost, money) # 带自定义money格式写入

row += 1

# Write a total using a formula.

worksheet.write(row, 0, 'Total', bold)

worksheet.write(row, 1, '=SUM(B2:B5)', money)

workbook.close()

excel写入时间格式

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

from datetimeimport datetime

import xlsxwriter

# Create a workbook and add a worksheet.

workbook= xlsxwriter.Workbook('Expenses03.xlsx')

worksheet= workbook.add_worksheet()

# Add a bold format to use to highlight cells.

bold= workbook.add_format({'bold':1})

# Add a number format for cells with money.

money_format= workbook.add_format({'num_format':'$#,##0'})

# Add an Excel date format.

date_format= workbook.add_format({'num_format':'mmmm d yyyy'})

# Adjust the column width.

worksheet.set_column(1,1,15)

# Write some data headers.

worksheet.write('A1','Item', bold)

worksheet.write('B1','Date', bold)

worksheet.write('C1','Cost', bold)

# Some data we want to write to the worksheet.

expenses= (

['Rent','2013-01-13',1000],

['Gas','2013-01-14',100],

['Food','2013-01-16',300],

['Gym','2013-01-20',50],

)

# Start from the first cell below the headers.

row= 1

col= 0

for item, date_str, costin (expenses):

# Convert the date string into a datetime object.

date= datetime.strptime(date_str,"%Y-%m-%d")

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

# Write a total using a formula.

worksheet.write(row,0,'Total', bold)

worksheet.write(row,2,'=SUM(C2:C5)', money_format)

workbook.close()

@@@ write方法提供了python类型到excel类型的转换, XlsxWriter支持excel工作表最大1048576行记录,16384条列记录,超出可以选择再建新sheet

1

2

3

4

5

6

7

worksheet.write(0,0,'Hello')# write_string()

worksheet.write(1,0,'World')# write_string()

worksheet.write(2,0,2)# write_number()

worksheet.write(3,0,3.00001)# write_number()

worksheet.write(4,0,'=SIN(PI()/4)')# write_formula()

worksheet.write(5,0, '')# write_blank()

worksheet.write(6,0,None)# write_blank()

4, 图标

这个是我比较关注的利用excel工具进行图标统计的功能

相比较python的matplotlib的画图模块,excel的图标更加漂亮灵活一些

Chart: Area, Bar, Column, Doughnut, Line, Pie, Scatter, Stock, Radar

workbook = xlswriter.Workbook('chart.xls')

worksheet = workbook.add_sheet('First_example')  # 普通工作表

建立Chart对象: chart = workbook.add_chart({type, 'column'})

将图插入到sheet中: worksheet.insert_chart('A7', chart)

或者可以建立图表工作表chartsheet

chartsheet = workbook.add_charsheet()

chartsheet.set_char(chart)

柱状图:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

import xlsxwriter

workbook= xlsxwriter.Workbook('chart.xlsx')

worksheet= workbook.add_worksheet()

# Create a new Chart object.

chart= workbook.add_chart({'type':'column'})

# Write some data to add to plot on the chart.

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])

# Configure the chart. In simplest case we add one or more data series.

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'})

# Insert the chart into the worksheet.

worksheet.insert_chart('A7', chart)

workbook.close()

workbook.add_chart({'type':'column'}) # 默认格式

workbook.add_chart({'type':'column', 'substyle':'percent_stacked'})  # 按百分比展示

workbook.add_chart({'type':'column', 'substyle':'stacked'})

其他类型chart也是这样:

Python模块调用方式详解

Python模块调用方式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其 ...

python模块之psutil详解

一.psutil模块: 1.psutil是一个跨平台库(http://pythonhosted.org/psutil/)能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息 ...

python模块与包详解

<1>.模块:任何  *.py 的文件都可以当作模块使用 import 导入 >>>improt test >>>b=test.a() >> ...

python模块的导入详解

一:一个小问题:什么是模块? 我的理解是:有通用功能的文件的集合. 二:为什么要使用模块? 我们通常为了使自己以前写的东西保存下来,会把东西写入文件中保存下来,必要时我们把这些文件当脚本去执行,也可以 ...

python中argparse模块用法实例详解

python中argparse模块用法实例详解 这篇文章主要介绍了python中argparse模块用法,以实例形式较为详细的分析了argparse模块解析命令行参数的使用技巧,需要的朋友可以参考下 ...

Python中random模块生成随机数详解

Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...

Nginx RTMP 模块 nginx-rtmp-module 指令详解

译序:截至 Jul 8th,2013 官方公布的最新 Nginx RTMP 模块 nginx-rtmp-module 指令详解.指令Corertmp语法:rtmp { ... }上下文:根描述:保存所 ...

Python对Excel操作详解

Python对Excel操作详解 文档摘要: 本文档主要介绍如何通过python对office excel进行读写操作,使用了xlrd.xlwt和xlutils模块.另外还演示了如何通过Tcl   ...

Python初学者常见错误详解

Python初学者常见错误详解 0.忘记写冒号 在 if.elif.else.for.while.class.def 语句后面忘记添加 “:”   if spam == 42 print('Hello ...

随机推荐

rabbitmq集群安装

在配置文件中配置集群没有成功,但是使用命令行成功了,以下是过程请参考.     场景:两台机器,一台是10.1.3.95 hostname为mq1,一台是10.1.3.96 hostname为 ...

shopnc2014年11版数据库字典

shopnc_activity 表注释: 活动表 字段 类型 空 默认 注释 activity_id mediumint(9) 否   id activity_title varchar(255) 否 ...

30天轻松学习javaweb&lowbar;Range实现断点续传

package com.wzh.test.http; import java.io.FileOutputStream; import java.io.IOException; import java. ...

Thrift框架介绍

1.前言 Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目.Thrift通过一个中间语言(IDL, 接口定义语言)来定义RPC的接口和 ...

JAVA长连接demo

http://blog.csdn.net/caomiao2006/article/details/38830475 JAVA长连接demo 2014-08-25 23:20 4767人阅读 评论(2) ...

&lbrack;wikioi&rsqb;多源最短路

http://wikioi.com/problem/1077/ Floyd算法.精华是三层循环,if (dist(i,k) + dist(k,j) < dist(i,j)) then dist( ...

PHPCMSv9 更改后台地址&lpar;测试&rpar;

最新发布的PHPCMS V9由于采用了MVC的设计模式,所以它的后台访问地址是固定的,虽然可以通过修改路由配置文件来实现修改,但每次都修改路由配置文件对于我来说有点麻烦了,而且一不小心就会出错.这里使 ...

HttpAsyncClient 的简单使用

下载地址:http://hc.apache.org/downloads.cgi 在NetBeans中导入以下jar文件: 1:一次请求: public static void oneReuest(){ ...

Pie(求最小身高差,dp)

Pie Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

iOS本地推送与远程推送详解

一.简介 分为本地推送和远程推送2种.可以在应用没有打开甚至手机锁屏情况下给用户以提示.它们都需要注册,注册后系统会弹出提示框(如下图)提示用户是否同意,如果同意则正常使用:如果用户不同意则下次打开程 ...

python中xlsxwriter_python模块之XlsxWriter 详解相关推荐

  1. Python中random模块生成随机数详解

    Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...

  2. python中selenium模块驱动谷歌详解

    python中selenium模块驱动谷歌详解 Selenium的介绍.配置和调用 Selenium(浏览器自动化测试框架) 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中 ...

  3. python中xlrd模块的使用详解

    python中xlrd模块的使用详解 两个问题: 什么是xlrd模块? 为什么使用xlrd模块? 1.什么是xlrd模块? python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读 ...

  4. python中re模块的span,详解Python正则表达式re模块

    正则是处理字符串最常用的方法,我们编码中到处可见正则的身影. 正则大同小异,python 中的正则跟其他语言相比略有差异: 1.替换字符串时,替换的字符串可以是一个函数 2.split 函数可以指定分 ...

  5. python xlsxwriter_python模块之XlsxWriter 详解

    Xlsx是python用来构造xlsx文件的模块,可以向excel2007+中写text,numbers,formulas 公式以及hyperlinks超链接. 可以完成xlsx文件的自动化构造,包括 ...

  6. python xlrd课程_python中xlrd模块的使用详解

    一.xlrd的安装 打开cmd输入pip install xlrd安装完成即可 二.xlrd模块的使用 下面以这个工作簿为例 1.导入模块 import xlrd 2.打开工作薄 # filename ...

  7. python中的subprocess.Popen()使用详解---以及注意的问题(死锁)

    从python2.4版本开始,可以用subprocess这个模块来产生子进程,并连接到子进程的标准输入/输出/错误中去,还可以得到子进程的返回值. subprocess意在替代其他几个老的模块或者函数 ...

  8. python平方数迭代器_对python中的高效迭代器函数详解

    python中内置的库中有个itertools,可以满足我们在编程中绝大多数需要迭代的场合,当然也可以自己造轮子,但是有现成的好用的轮子不妨也学习一下,看哪个用的顺手~ 首先还是要先import一下: ...

  9. Python中的select、epoll详解

    Python中的select.epoll详解 文章目录 Python中的select.epoll详解 一.select 1.相关概念 2.select的特性 1.那么单进程是如何实现多并发的呢??? ...

  10. python中pandas安装视频教程_详解Python中pandas的安装操作说明(傻瓜版)

    很多人来问我pandas的安装(python数据分析里面的必修课) 步骤如下: 安装python的时候,把路径加到系统里,这样,随时可以用pip 路径添加方法: 查找路径: 路径1: 2.例如: 即: ...

最新文章

  1. 如何更好的解决问题 : The puzzle of die
  2. 零配置 之Spring基于Java类定义Bean配置元数据
  3. 通信调制体制设计之64QAM性能分析MATLAB仿真及代码
  4. VM虚拟机链接克隆及linux eth0网卡的快速设置方法
  5. html5学习笔记---03. Canvas简介,Canvas的使用方法
  6. LeetCode 415. 字符串相加 (逢十进一模版字符处理)
  7. 不想用宝塔面板建站,如何手动搭建LAMP环境安装wordpress
  8. 一图读懂resnet神经网络
  9. 【历史上的今天】9 月 16 日:乔布斯的归来;苹果崛起;易语言发布
  10. 计算机文化以计算机为核心,计算机文化础知识点总结(经典版) 考试专用.doc
  11. 永中集成Office为何无法随意克隆(Clone)?
  12. Ubuntu 朗文不发音问题
  13. Java @Min(0)的意义
  14. kettle 9.x 版本连接资源库,资源库灰色
  15. LogicFlow(Vue3)
  16. spring-IOC-三更的扩展版
  17. 2023轩辕奖出炉,怿星科技共创荣誉
  18. vue-tree-chart 组织架构-树形图-流程图(含鼠标右击事件)
  19. NGR/R8-PEG-ICG,肿瘤新生血管靶向肽NGR/穿膜肽R8-聚乙二醇-吲哚菁绿
  20. C#编程,Parallel类实现数据并行与任务并行

热门文章

  1. PM3破解加密IC卡
  2. java ftl_.ftl文件 是什么文件 freemaker
  3. win10关闭windows聚焦_win10 系统中的windows聚焦是什么意思 - 卡饭网
  4. 普通正态分布如何转换到标准正态分布
  5. Java代码实现24点计算
  6. python测试开发django-155.bootbox使用(alert/confirm/prompt/dialog)
  7. 行为树(Behavior Tree)
  8. 矩阵的转置matlab,矩阵的转置表示 matlab中矩阵的转置怎么表示
  9. 调试神器SEGGER_RTT移植使用
  10. jemalloc疑似内存泄漏分析