本文介绍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操作excel的方法(xlsxwriter包的使用)
- Author -
Jepson2017声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@