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的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
Jun 14 Python
Python实现返回数组中第i小元素的方法示例
Dec 04 Python
Python字典,函数,全局变量代码解析
Dec 18 Python
python调用c++传递数组的实例
Feb 13 Python
Django 创建新App及其常用命令的实现方法
Aug 04 Python
Python Pandas 转换unix时间戳方式
Dec 07 Python
Pandas 解决dataframe的一列进行向下顺移问题
Dec 27 Python
python logging 日志的级别调整方式
Feb 21 Python
python 的numpy库中的mean()函数用法介绍
Mar 03 Python
Keras load_model 导入错误的解决方式
Jun 09 Python
Opencv中cv2.floodFill算法的使用
Jun 18 Python
Python中使用Opencv开发停车位计数器功能
Apr 04 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程序
2006/10/09 PHP
php数组合并的二种方法
2014/03/21 PHP
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
JavaScript常用的弹出广告及背投广告实现方法
2015/02/06 Javascript
javascript实现动态标签云
2015/10/16 Javascript
jQuery封装的屏幕居中提示信息代码
2016/06/08 Javascript
JS HTML5实现拖拽移动列表效果
2020/08/27 Javascript
浅述Javascript的外部对象
2016/12/07 Javascript
Javascript仿京东放大镜的效果
2017/03/01 Javascript
使用JS编写的随机抽取号码的小程序
2017/08/11 Javascript
axios全局请求参数设置,请求及返回拦截器的方法
2018/03/05 Javascript
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
小程序Request的另类用法详解
2019/08/09 Javascript
js实现百度登录窗口拖拽效果
2020/03/19 Javascript
python对指定目录下文件进行批量重命名的方法
2015/04/18 Python
Centos Python2 升级到Python3的简单实现
2016/06/21 Python
python 数据清洗之数据合并、转换、过滤、排序
2017/02/12 Python
Python数据分析之如何利用pandas查询数据示例代码
2017/09/01 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
浅谈python 读excel数值为浮点型的问题
2018/12/25 Python
python实现车牌识别的示例代码
2019/08/05 Python
python字典与json转换的方法总结
2020/12/28 Python
详解使用HTML5 Canvas创建动态粒子网格动画
2016/12/14 HTML / CSS
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
BAILEY 44官网:美国制造的女性服装
2019/07/01 全球购物
客服端调用EJB对象的几个基本步骤
2012/01/15 面试题
高中毕业生自我鉴定
2013/11/03 职场文书
保密承诺书
2014/03/27 职场文书
房屋继承公证书
2014/04/10 职场文书
小区文明倡议书
2014/05/16 职场文书
2015年世界无烟日演讲稿
2015/03/18 职场文书
上市公司董事长岗位职责
2015/04/16 职场文书
面试通知短信
2015/04/20 职场文书
关于k8s环境部署mysql主从的问题
2022/03/13 MySQL
win11高清晰音频管理器在哪里?win11找不到高清晰音频管理器解决办法
2022/04/08 数码科技