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

yipeiwu_com6年前Python基础

本文介绍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中单线程、多线程和多进程的效率对比实验实例

python的多进程性能要明显优于多线程,因为cpython的GIL对性能做了约束。 Python是运行在解释器中的语言,查找资料知道,python中有一个全局锁(GIL),在使用多进程...

pygame游戏之旅 添加游戏界面按键图形

pygame游戏之旅 添加游戏界面按键图形

本文为大家分享了pygame游戏之旅的第10篇,供大家参考,具体内容如下 通过获取鼠标的位置然后进行高亮显示: mouse =pygame.mouse.get_pos() if 1...

videocapture库制作python视频高速传输程序

videocapture库制作python视频高速传输程序

1,首先是视频数据[摄像头图像]的采集,通常可以使用vfw在vc或者vb下实现,这个库我用的不好,所以一直不怎么会用.现在我们用到的是python的videocapture库,这个库用起...

python实现Flappy Bird源码

python实现Flappy Bird源码

Flappy Bird是前段时间(好像一年or两年前....)特别火的有一个小游戏,相信大家都玩过。 Flappy Bird操作简单,通过点击手机屏幕使Bird上升,穿过柱状障碍物之后得...

Python格式化输出字符串方法小结【%与format】

python格式化字符串有%和{}两种 字符串格式控制符. 字符串输入数据格式类型(%格式操作符号) %% 百分号标记#就是输出一个%...