Python xlwt 写Excel相关操作记录
1、安装xlwt
pip install xlwt
2、写Excel必要的几步
import xlwt
book = xlwt.Workbook() #创建一个workbook,无编码设置编码
book = xlwt.Workbook(encoding = 'utf-8') #创建一个workbook,并设置编码
sheet = book.add_sheet('testsheet') # 创建一个sheet
sheet.write(1,0, label='test',style) # 写入Excel操作,参数对应行、列、要写入的值,样式,样式可以不用带
book.save(self.file+"\test.xls") # 保存Excel
运行后,会在file这个路径下生成一个“test.xls”的文件。
3、将时间写入到Excel单元格
import xlwt
import datetime book = xlwt.Workbook()
sheet = book.add_sheet('timetest')
style = xlwt.XFStyle()
style.num_format_str = 'YYYY-MM-DD hh:mm:ss' # 格式由自己选择,可自由指定
sheet.write(0, 3, datetime.datetime.now(), style)
book.save('timetest.xls')
4、字体的操作
0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta, 7 = Cyan, 16 = Maroon, 17 = Dark Green, 18 = Dark Blue, 19 = Dark Yellow,
(almost brown), 20 = Dark Magenta, 21 = Teal, 22 = Light Gray, 23 = Dark Gray
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet') # 设置字体
style = xlwt.XFStyle()
font = xlwt.Font()
font.bold = True # 字体加粗
font.name = 'Times New Roman' # 选择字体
font.underline = True # 字体下划线
font.italic = True # 斜体
font.height = 300 # 字体大小
font.colour_index = 3 # 字体颜色
style.font = font
sheet.write(1,1,'This is a testcase') # 不带样式写入
sheet.write(2,1,'This is a testcase',style) # 带样式写入
book.save(file + '\\test_excel.xls')

也可以换种方式:使用xlwt.easyxf
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet') style = xlwt.easyxf('font: colour_index red, bold on') # style = xlwt.easyxf('font: height 300')
sheet.write(2,1,'This is a testcase',style)
book.save(file + '\\test_excel.xls')

5、设置单元格的宽、高
行宽设置:
xlwt中列宽的值表示方法:默认字体0的1/256为衡量单位。
xlwt创建时使用的默认宽度为2960,既11个字符0的宽度
我们在设置列宽时可以用此方法:width = 256 * 20 256为衡量单位,20表示20个字符宽度
import xlwt
sheet = book.add_sheet('testsheet')
sheet.write(1,1,'This is a testcase')
sheet.col(0).width = 5120 # 设置单元格宽度
book.save(file + '\\test_excel.xls')

行高设置:
行高可以不设定,会根据自己设置字体的大小自动适应行高
6、为单元格设置背景色
may be :8 through 63. 0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta, 7 = Cyan, 16 = Maroon, 17 = Dark Green, 18 = Dark Blue, 19 = Dark Yellow,
(almost brown), 20 = Dark Magenta, 21 = Teal, 22 = Light Gray, 23 = Dark Gray or
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
style = xlwt.XFStyle()
sheet.col(1).width = 5120
bg = xlwt.Pattern()
bg.pattern = bg.SOLID_PATTERN # NO_PATTERN, SOLID_PATTERN, or 0x00 through 0x12
bg.pattern_fore_colour = 3
style.pattern = bg
sheet.write(2,1,'This is a testcase',style)
book.save(file + '\\test_excel.xls')

设置背景色也可以换一种方式:使用xlwt.easyxf
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet') style = xlwt.easyxf('pattern: pattern solid, fore_colour red') sheet.write(2,1,'This is a testcase',style)
book.save(file + '\\test_excel.xls')

7、为单元格添加边框
borders的分类大致分为:NO_LINE, THIN, MEDIUM, DASHED, DOTTED, THICK, DOUBLE, HAIR, MEDIUM_DASHED, THIN_DASH_DOTTED, MEDIUM_DASH_DOTTED, THIN_DASH_DOT_DOTTED, MEDIUM_DASH_DOT_DOTTED, SLANTED_MEDIUM_DASH_DOTTED, or 0x00 through 0x0D.
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
style = xlwt.XFStyle()
sheet.col(1).width = 5120
borders = xlwt.Borders()
borders.left = borders.DASHED
# DASHED虚线
# NO_LINE没有
# THIN实线
borders.right = borders.THIN
borders.top = borders.NO_LINE
borders.bottom = borders.DOUBLE
borders.left_colour = 6
borders.right_colour = 4
borders.top_colour = 4
borders.bottom_colour = 3
style.borders = borders
sheet.write(2,1,'This is a testcase',style)
book.save(file + '\\test_excel.xls')

8、设置单元格里面内容的对其方式
单元格对其方式有两种:水平对齐(hoze)和垂直对齐(vert)
水平对齐包含: HORZ_GENERAL, HORZ_LEFT, HORZ_CENTER, HORZ_RIGHT, HORZ_FILLED, HORZ_JUSTIFIED, HORZ_CENTER_ACROSS_SEL, HORZ_DISTRIBUTED
垂直对齐包含:VERT_TOP, VERT_CENTER, VERT_BOTTOM, VERT_JUSTIFIED, VERT_DISTRIBUTED
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
aligment = xlwt.Alignment()
aligment.horz = aligment.HORZ_CENTER # 水平对齐方式
aligment.vert = aligment.VERT_BOTTOM # 垂直对其方式
style.alignment = aligment
sheet.write(2,1,'This is a testcase',style)
book.save(file + '\\test_excel.xls')

9、合并单元格行、列
合并单元格是在写入的时候合并,使用write_merge,相对于write来说里面增加了两个参数,即合并的行和列。write_merge参数的前两个代表要合并的行,三到四位参数代表的是要合并的列。
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
sheet.write_merge(1,3,1,1,'This is a testcase') # 合并1-3行的1-1列,前两个参数代表行,后两个参数代表列
book.save(file + '\\test_excel.xls')

10、向单元格添加公式
向单元格中写公式时,通过xlwt.Formula添加公式
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
sheet.write(0,0,5)
sheet.write(0,1,6)
sheet.write(1,0,xlwt.Formula('A1*B1')) # A1[5]*B1[6]=30
sheet.write(2,0,xlwt.Formula('SUM(A1:A2)')) # A1[5]+A2[30]=35
book.save(file + '\\test_excel.xls'
11、向单元格添加超链接
import xlwt
book = xlwt.Workbook(encoding='utf-8')
sheet = book.add_sheet('testsheet')
sheet.write(0,0,xlwt.Formula('HYPERLINK("https://www.baidu.com";"百度")')) # 向单元格写入文字:百度,并加上链接:https://www.baidu.com
Python xlwt 写Excel相关操作记录的更多相关文章
- 使用Python xlwt写excel文件
如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...
- python xlwt写excel格式控制 颜色、模式、编码、背景色
关于写excel的格式控制,比如颜色等等 import xlwt from datetime import datetime font0 = xlwt.Font() font0.name = 'Tim ...
- python xlwt写Excel表
1 xlwt第三方库 说明:xlwt是一个用于将数据和格式化信息写入并生成Excel文件的库. 注意:xlwt不支持写xlsx表,打开表文件报错. 官方文档:https://xlwt.readthed ...
- python xlsxwriter写excel并操作各种格式属性
# -*- coding: utf-8 -*- import xlsxwriter workbook = xlsxwriter.Workbook('test.xlsx') worksheet = wo ...
- xlwt:python的写excel模块
最近工作时碰到了将数据导出,生成一个excel表,对其中的部分数据进行统计,并给其中部分符合条件的数据添加对应的背景颜色的功能需求,于是乎,对Python中写excel的模块xlwt研究了一下,在工作 ...
- python中使用xlrd读excel使用xlwt写excel
原文地址 :http://www.bugingcode.com/blog/python_xlrd_read_excel_xlwt_write_excel.html 在数据分析和运营的过程中,有非常多的 ...
- php的Excel相关操作
1.需求 把数据库的数据输出excel格式 2.解决方案 利用phpexcel中的examples的01和07,对excel文件的读写 3.操作流程 a.https://github.com/PHPO ...
- Centos7下部署两套python版本并存环境的操作记录
需求说明:centos7.2系统的开发机器上已经自带了python2.7版本,但是开发的项目中用的是python3.5版本,为了保证Centos系统的正常运行,以及节省机器资源(不想因此再申请另外一台 ...
- 026.Python面向对象类的相关操作以及对象和类的删除操作
类的相关操作 定义的类访问共有成员的成员和方法 定义的类动态添加公有成员的属性和方法 定义的类删除公有成员的属性和方法 1 定义一个基本的类 #定义一个类 class Plane(): #添加一个共有 ...
随机推荐
- Java开发之使用websocket实现web客户端与服务器之间的实时通讯
使用websocket实现web客户端与服务器之间的实时通讯.以下是个简单的demo. 前端页面 <%@ page language="java" contentType=& ...
- springcloud~配置中心~对敏感信息加密
简介 RSA非对称加密有着非常强大的安全性,HTTPS的SSL加密就是使用这种方法进行HTTPS请求加密传输的.因为RSA算法会涉及Private Key和Public Key分别用来加密和解密,所以 ...
- ES-索引操作
参考: https://es.xiaoleilu.com/030_Data/05_Document.html <ELasticsearch in Action> 以下的操作在ES7.5版本 ...
- 初步了解Node.js,学做简单的留言本案例
在还没有正式的学Node.js的时候, 你们认为Node.js 对于前端来说是什么呢? 会认为Node.js 是框架? 认为这是类似Jquery的一个快速.简洁的JavaScript框架? 反正我自己 ...
- Windows添加自定义开机用户登录启动程序
默认的启动程序 Ctrl+shift -> Esc调用任务管理器-->启动项选项即可完成计算机开机自启动选项,不过这里只有系统默认添加的. 添加自定义开机启动程序 Windows+R调用运 ...
- jQuery - 拦截所有Ajax请求(统一处理超时、返回结果、错误状态码 )
样例代码: <html> <head> <title>hangge.com</title> <meta charset="utf-8&q ...
- SpringBoot条件注解的总结
https://blog.csdn.net/qq_31142553/article/details/86439950
- 基于 CAS 无锁实现的 Disruptor.NET 居然慢于 BlockingCollection,是真的吗?
StackOverflow 有人说自己的Disruptor.NET 代码比 BlockingCollection 还有慢 2 倍,并且把完整代码贴出,楼下几个老外也的回复说了一堆,但是没研究出个所以然 ...
- Python 从入门到进阶之路(五)
之前的文章我们简单介绍了一下 Python 的函数,本篇文章我们来看一下 Python 中的面向对象. Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是 ...
- JS 实现动态轮播图
JavaScript实现轮播图思路 + html/css + js源码 整个轮播图的效果是通过js代码,操作dom, 拿到html我们需要的元素,控制整个ul的距离浏览器左边的位置,让排好的图片依次出 ...