python操作excel的方法(xlsxwriter包的使用)


Posted in Python onJune 11, 2018

本文介绍python操作excel的方法(xlsxwriter包的使用),具体内容如下

xlsxwriter包的安装

pip install xlsxwriter

Workbook类

创建一个excel文件

filename = "test.xlsx"
# Workbook代表整个电子表格文件,并且存储在磁盘上。filename为字符串类型,表示创建的excel文件存储路径;
wb = xlsxwriter.Workbook(filename)

创建一个sheet表:add_worksheet

add_worksheet([sheetname])方法,用于添加一个新的工作表,sheetname为工作表名称,默认是sheet1,例如:

ws = wb.add_worksheet() #创建一个sheet1的表
ws2 = wb.add_worksheet("test") #创建一个test的表

设置sheet表单元格的行高和列宽

set_row(row, height)方法,用于设定某一行单元格的行高
(row:指定行位置,起始下标为0;height:为float类型,设定行高,单位像素)
set_column(first_col, last_col, width)方法,用于设置一列或多列单元格的列宽
(irst_col:整型,指定开始列位置,起始下标为0;last_col:整型,指定结束列位置,起始下标为0;width:float类型,设置列宽)
set_column(“first_col:last_col”, width)方法(first_col和last_col用英文字母表示列名,起始为A)

# 设置sheet表单元格列宽
ws.set_column(0,3,40) #设定第1到4列的列宽为40
ws.set_column("A:A", 40) #设定A列列宽为40
ws.set_column("B:D", 15) #设定B、C、D三列的列宽为15
ws.set_column("E:F", 50) #设定E、F列的列宽为50

#设置sheet表单元格行高
ws.set_row(0,40) #设置第一行的高度为40

向单元格中写入内容:write

write(row, col, data,cell_format)方法:是用来将普通数据写入单元格中(行标、列标、内容、单元格格式)

# 为了简化不同数据类型的写入过程,write方法已作为其他更加具体的数据类型方法的别名,如:
write.string():写入字符串类型数据
wirte_number():写入数字型数据
write_blank():写入空类型数据
write_formula():写入公式型数据
write_datetime():写入日期型数据
wirte_boolean():写入逻辑型数据
write_url():写入超链接型数据

# 示例:
ws.write(1,1,"python操作excel") #在单元格1行1列中写入:“python操作excel”

单元格常用格式

#设定整个sheet表的单元格的格式

property = {
      'font_size': 11,#字体大小
      'bold':True, #是否加粗
      'align': 'left',#水平对齐方式
      'valign': 'vcenter',#垂直对齐方式
      'font_name': u'微软雅黑',
      'text_wrap': False, # 是否自动换行
      }
cell_format = wb.add_format(property)

#在向单元格中写入内容时,加上单元格样式
ws.write(row,col,data,cell_format)

单元格中插入图片

insert_image(row, col, image[, options])方法,用于插入图片到指定的单元格,支持PNG,JPEG,BMP等多种格式。
row:行坐标,起始索引值为0;
col:列坐标,起始索引值为0;
image:string类型,是图片路径;
options:dict类型,是可选参数,用于指定图片位置,如URL等信息;

# 图片格式
img_format={
      'x_offset': 8,#水平偏移
      'y_offset': 14,#垂直偏移
      'x_scale': 0.18,#水平缩放
      'y_scale': 0.18,#垂直缩放
      'url': None,
      'tip': None,
      'image_data': None,
      'positioning': None
      }
# 示例:
ws.insert_image(1,1,'1.png',img_format)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python对字典进行排序实例
Sep 25 Python
python根据路径导入模块的方法
Sep 30 Python
Python函数参数类型*、**的区别
Apr 11 Python
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
Jul 04 Python
selenium + python 获取table数据的示例讲解
Oct 13 Python
python定间隔取点(np.linspace)的实现
Nov 27 Python
Jupyter加载文件的实现方法
Apr 14 Python
Python如何获取文件指定行的内容
May 27 Python
pycharm实现print输出保存到txt文件
Jun 01 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
Sep 29 Python
python如何利用paramiko执行服务器命令
Nov 07 Python
Python排序函数的使用方法详解
Dec 11 Python
Python 爬取携程所有机票的实例代码
Jun 11 #Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 #Python
Anaconda 离线安装 python 包的操作方法
Jun 11 #Python
使用anaconda的pip安装第三方python包的操作步骤
Jun 11 #Python
python获取代码运行时间的实例代码
Jun 11 #Python
解决Ubuntu pip 安装 mysql-python包出错的问题
Jun 11 #Python
Anaconda下安装mysql-python的包实例
Jun 11 #Python
You might like
比较全面的PHP数组的使用方法小结
2010/09/23 PHP
7个超级实用的PHP代码片段
2011/07/11 PHP
PHP代码网站如何防范SQL注入漏洞攻击建议分享
2012/03/01 PHP
PHP实现微信对账单处理
2018/10/01 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
javascript阻止scroll事件多次执行的思路及实现
2013/11/08 Javascript
js实现俄罗斯方块小游戏分享
2014/01/31 Javascript
jQuery中remove()方法用法实例
2014/12/25 Javascript
谈谈javascript中使用连等赋值操作带来的问题
2015/11/26 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
获取今天,昨天,本周,上周,本月,上月时间(实例分享)
2017/01/04 Javascript
老生常谈jquery id选择器和class选择器的区别
2017/02/12 Javascript
JavaScript模拟实现封装的三种方式及写法区别
2017/10/27 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
2017/12/19 Javascript
Vue组件创建和传值的方法
2018/08/17 Javascript
element-ui 上传图片后清空图片显示的实例
2018/09/04 Javascript
Net微信网页开发 使用微信JS-SDK获取当前地理位置过程详解
2019/08/26 Javascript
layui 实现table翻页滚动条位置保持不变的例子
2019/09/05 Javascript
JS防抖和节流实例解析
2019/09/24 Javascript
three.js 如何制作魔方
2020/07/31 Javascript
[49:20]2014 DOTA2国际邀请赛中国区预选赛5.21 CIS VS TongFu
2014/05/22 DOTA
Python实现的json文件读取及中文乱码显示问题解决方法
2018/08/06 Python
使用Python获取网段IP个数以及地址清单的方法
2018/11/01 Python
Python mutiprocessing多线程池pool操作示例
2019/01/30 Python
python如何爬取网页中的文字
2020/07/28 Python
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
命名空间(namespace)和程序集(Assembly)有什么区别
2015/09/25 面试题
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2014/07/21 面试题
收银员岗位职责
2014/02/07 职场文书
大学生在校学习的自我评价
2014/02/18 职场文书
《第一朵杏花》教学反思
2014/04/16 职场文书
小学生读书活动总结
2014/06/30 职场文书
大学生暑期实践报告
2015/07/13 职场文书
2015年教师个人业务工作总结
2015/10/23 职场文书
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
2021/04/22 PostgreSQL
Rust中的Struct使用示例详解
2022/08/14 Javascript