Python xlwt设置excel单元格字体及格式

原创 2015年12月13日 17:55:51

本文根据自己初学经验编写的使用xlwt模块设置单元格的一些基本样式,如设置单元格的背景颜色,下框线,字体,字体的颜色,设置列宽行高,插入简单的图片,详细程序如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-”                #只对当前文件的中文编码有效                                      
#Create by zhizaiqianli 2015-12-12  Version V1.0
#!/usr/bin/python
# Filename : Write_excel_Format.py
import os
import time                                                          
from xlwt import *
from Mymodule import cur_file_dir

filename = 'TestData2.xls'                                      #检测当前目录下是否有TestData2.xls文件,如果有则清除以前保存文件
if os.path.exists(filename):
    os.remove(filename)

print time.strftime("%Y-%m-%d",time.localtime(time.time())) #打印读取到当前系统时间    

wbk = Workbook(encoding='utf-8')  
sheet = wbk.add_sheet('new sheet 1', cell_overwrite_ok=True)                 #第二参数用于确认同一个cell单元是否可以重设值。
style = XFStyle()                       #赋值style为XFStyle(),初始化样式                                    

for i in range(0x00,0xff):              # 设置单元格背景颜色                                 
    pattern = Pattern()                 # 创建一个模式                                        
    pattern.pattern = Pattern.SOLID_PATTERN     # 设置其模式为实型              
    pattern.pattern_fore_colour = i                             
    # 设置单元格背景颜色 0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta,  the list goes on...
    style.pattern = pattern             # 将赋值好的模式参数导入Style                                  
    Line_data = (u'测试表')              #创建一个Line_data列表,并将其值赋为测试表,以utf-8编码时中文前加u                                 
    sheet.write_merge(i, i, 0, 2, Line_data, style) #以合并单元格形式写入数据,即将数据写入以第1/2/3列合并德单元格内         

for i in range(0x00,0xff):              # 设置单元格内字体样式                            
    fnt = Font()                        # 创建一个文本格式,包括字体、字号和颜色样式特性                              
    fnt.name = u'微软雅黑'                # 设置其字体为微软雅黑                                 
    fnt.colour_index = i                # 设置其字体颜色                                    
    fnt.bold = True                                             
    style.font = fnt                    #将赋值好的模式参数导入Style                                   
    sheet.write_merge(i,i,3,5,Line_data,style)  #以合并单元格形式写入数据,即将数据写入以第4/5/6列合并德单元格内                    

for i in range(0, 0x53):                # 设置单元格下框线样式                                    
    borders = Borders()                                         
    borders.left = i                                           
    borders.right = i                                           
    borders.top = i                                             
    borders.bottom = i                                          
        style.borders = borders         #将赋值好的模式参数导入Style                                 
    sheet.write_merge(i,i,6,8,Line_data,style)  #以合并单元格形式写入数据,即将数据写入以第4/5/6列合并德单元格内

for i in range(6, 80):                  # 设置单元格下列宽样式                                        
    sheet.write(0,i,Line_data,style)
    sheet.col(i).width = 0x0d00 + i*50

path_py = "\\images\python.bmp"         #读取插入图片以.py运行时路径,images和.py在同一目录下                           
path_exe = "\\images\python.bmp"        #读取插入图片以.exe运行时路径,.exe可以移到其他任意目录下运行但images和.exe在同一目录下                       
path = cur_file_dir(path_py,path_exe)   #获取文件的相对路径
filename = path                         #检测当前目录下是否有python.bmp图片,
if os.path.exists(filename):
    print u'python.bmp图片存在' 
elseprint u'python.bmp图片不存在'                            
sheet.insert_bitmap(path, 2, 9)         #插入一个图片                             

wbk.save('TestData2.xls')               #保存TestData2.xls文件,保存到脚本或exe文件运行的目录下                                  
raw_input("Enter enter key to exit...") #插入一个输入命令,方便运行exe时一闪而过不到打印信息                        

以cmd命令运行 Write_excel_Format.py时结果和生成表格如下所示:
这里写图片描述
这里写图片描述

编写博客记录分享,也是为自己备份,如有疑问可以发表评论沟通,谢谢!

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013400654/article/details/50284983

Python使用xlwt写excel并设置写入格式

关于写excel的格式控制,比如颜色等等 import xlwt from datetime import datetime    font0 = xlwt.Font() font0...
  • onlyanyz
  • onlyanyz
  • 2015年04月28日 23:48
  • 13572

python xlwt 写excel格式设置大全

Examples Generating Excel Documents Using Python’s xlwt Here are some simple examples usingPython...
  • qq798618048
  • qq798618048
  • 2013年11月06日 12:48
  • 7997

python xlwt写excel格式控制 颜色、模式、编码、背景色

转载▼ (二) 关于写excel的格式控制,比如颜色等等 import xlwt from datetime import datetime    font0 = x...
  • kk123a
  • kk123a
  • 2015年11月13日 09:50
  • 13109

Python小结 - xlwt

xlwt是Python用来写Excel文件的包。本文使用的是1.0.0版本。及时是当前最新版,也只能写xls文件而不能写xlsx文件。...
  • 972301
  • 972301
  • 2017年03月06日 22:06
  • 2709

python导出excel常用格式样式设置

# encoding:utf-8 import xlwt from xlwt import * book = Workbook(encoding='utf-8') sheet = book.add_...
  • qq_32502511
  • qq_32502511
  • 2016年12月05日 11:38
  • 3370

使用Python做一张满足基本样式要求的Excel表格

Excel电子表格在实际使用中,最常规的需求基本上包括定义标题、定义表头和写入具体记录行三部分内容。使用Python借助openpyxl库(http://openpyxl.readthedocs.io...
  • sweeper_freedoman
  • sweeper_freedoman
  • 2017年05月01日 23:56
  • 1696

[Python]python之xlwt模块列宽width、行高Heights详解

[Python]python之xlwt模块列宽width、行高Heights详解
  • forfuture3513
  • forfuture3513
  • 2016年09月25日 15:52
  • 4830

xlwt style

#encoding=utf-8 from xlwt import Workbook, easyxf def show_color(sheet): colNum = 6 ...
  • Lucky_BOY1987
  • Lucky_BOY1987
  • 2018年01月17日 16:42
  • 43

xlwt 里easyxf能理解的颜色预览

aqua black blue blue_gray bright_green brown coral cyan_ega ...
  • haowells
  • haowells
  • 2014年07月18日 13:46
  • 3135

python操作excel表格 格式设置

  • 2016年09月14日 17:30
  • 4KB
  • 下载
收藏助手
不良信息举报
您举报文章:Python xlwt设置excel单元格字体及格式
举报原因:
原因补充:

(最多只允许输入30个字)