前面内容,我们详细了解了使用Python中xlrd和xlwt模块处理Excel文件的一些常用操作,并通过几个简单的案例,将Excel文件展示在了Python GUI界面中。
回顾下前面精彩内容
#python#下面是一些文章链接
Excel文件另类操作,如何用Python中xlrd模块获取电子表格的信息
用Python将电子表格Excel展示在界面中,PyQt5之QTableWidget应用
Excel表格搬到Python界面上?可以实现!结合PyQt5的QTabWidget类
Python操作Excel电子表格?xlwt模块重拳出击,看这一篇就够了!
今天,我们来详细了解下使用xlwt模块处理Excel文件时的一些有关颜色的设置
xlwt的颜色设置
Excel中需要进行颜色设置的地方及字体颜色设置
在进入xlwt的颜色世界之前,我们来了解下Excel中哪些地方需要进行颜色设置
设置Excel颜色的地方有哪些?
最常用的颜色设置有下面几个地方
单元格字体颜色单元格背景颜色单元格边框颜色
xlwt有哪些颜色值
我们使用两种方法来获得预定义好的一些颜色值
【colour_index】
我们先来看下Excel对应有哪些颜色,通过代码展示如下:
展示颜色代码为0-99的颜色内容
我们打开创建的Excel文件看下颜色种类。
xlwt颜色代码对应的颜色内容
图中可以很容易看到,颜色1、9基本就是白色(肉眼很难区分),颜色64-99基本就是黑色了,不好区分,0-63之间的颜色代码我们可以区别使用。
【colour_map】
除了使用colour_index属性对于颜色赋值外,还可以使用Style类的colour_map属性获得一些预定义值的颜色属性值。我们在Excel中展示一下,输入以下代码
通过colour_map属性获取颜色内容
我们来看一下这样获取到了哪些颜色值,如下图所示
使用colour_map显示的颜色值
下面,我们来看下如何通过代码给单元格设置背景色。
如何给单元格设置背景色
上面代码也展示了如何给字体设置颜色属性,还是使用上面的思路,我们定义一个背景色颜色代码,将0-99个单元格利用背景色内容进行填充,具体代码如下:
设置单元格背景色
我们来看下设置背景色效果图。
单元格背景色设置
背景色知道了,但是背景的填充样式有哪些呢?我们逐一来看一下:
填充样式
这个作业留给大家自己思考了,如何将这些样式输出到Excel表格中呢?
单元格边框样式及颜色设置
【边框设置的一般过程】
我们先来看下如何对边框颜色进行设置,对于边框的样式设定有一个Border类,设置边框样式的方法是这样的:
# 实例化一个类
borders = xlwt.Borders()
# 然后分别设定每一边的样式
borders.left = xlwt.Borders.MEDIUM # 添加边框-虚线边框
borders.right = xlwt.Borders.MEDIUM # 添加边框-虚线边框
borders.top = xlwt.Borders.MEDIUM # 添加边框-虚线边框
borders.bottom = xlwt.Borders.MEDIUM # 添加边框-虚线边框
# 设定每一边的颜色
borders.left_colour = 10
borders.right_colour = 10
borders.top_colour = 10
borders.bottom_colour = 10
# 实例化一个XFStyle
style = xlwt.XFStyle()
# 添加style边框
style.borders = borders
# 样式写入一个单元格
worksheet.write(1, 1, Content, style)
五颜六色的样式
【边框样式有哪些】
边框样式的可选择值有下面几种:
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或0x00到0x0D范围内的十六进制数值
这里不做赘述了,主要对应的就是Excel程序中单元格样式设置的几个选项,如下图所示。
边框样式
到底怎么个对应关系,这里就不做介绍了,后续专题研究。
【边框颜色如何设置】
像上面的例子中这样,给边框颜色属性直接一个颜色值即可,类似colour_index的一个索引值(可参考上面的颜色),这里不做赘述了。
问题来了,举个例子
好了,讲了这么多,应该到我们展示的时刻了,今天,我们来回顾下前面的知识,使用代码处理一个Excel单元格,如下面所示。
例子
废话不多说,直接上代码了,如下图所示。
源代码
注释都有,这里就不做过多解释了。
好了,今天的内容就到这里了,喜欢Python编程的小伙伴关注我,后续推出更多精彩内容。
转载请注明出处,百家号:Python高手养成
想了解更多精彩内容,快来关注python高手养成