使用Python xlwt写excel文件

如果需要使用Python写Excel文件,首先下载或者安装xlwt。

pip install xlwt

下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件:

创建工作簿(workbook)和工作表(sheet):

import xlwt
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("Sheet Name")

写单元格(cell):

sheet.write(0, 0, ‘foobar‘) # row, column, value

对单元格应用样式(加粗为例):

style = xlwt.easyxf(‘font: bold 1‘)
sheet.write(0, 0, ‘foobar‘, style)

设置列宽:

要设置列宽,你必须将宽度属性设为 256*NUM_CHARS,其中256等于0字符的宽度。

sheet.col(0).width = 256 * (len(key) + 1)
# set width.. 256 = 1 width of 0 character

对单元格应用多重样式:

需要注意每一个文档的样式应该限制在4k以内,这意味着你不应该为每一个单元格初始化一个样式,而是应该复用它们(阅读后面的内容可以看到一个简单的缓存解决方案)

style = xlwt.easyxf(‘font: bold 1, color red;‘))
sheet.write(0, 0, ‘foobar‘, style)

应用货币样式:

要设置货币,在easyxf函数里添加关键词参数num_format_str,或者在返回的样式对象里设置属性。

style = easyxf(num_format_str=‘$#,##0.00‘)
# or set it directly on the style object
style = easyxf(‘font: bold 1‘)
style.num_format_str = ‘$#,##0.00‘
sheet.write(0, 0, ‘100.00‘, style)

写Excel公式:

使用xlwt.Formula可以很容易地写Excel公式。

sheet.write(0, 0, xlwt.Formula(‘HYPERLINK("http://yujitomita.com"; "click me")‘))

保存:

workbook.save("foobar.xls")
# done!

使用陷阱(GOTCHAS):

下面是一些常见的使用陷阱的解决方案。

禁止覆盖单元格:

我实际上非常喜欢这一特性—它防止了单元格被覆盖,所以我不止遇到过一次脚本运行失败的情况。话又说回来,你为什么要覆盖单元格呢?

# to overwrite cells, create the sheet with kwarg cell_overwrite_ok
workbook.add_sheet(‘foobar‘, cell_overwrite_ok=True)

有效的工作表命名:

  • 工作表的名称必须小于31个字符
  • 命名不应包含特殊字符,例如‘:’, ‘/’等

每文档4k样式限制:

如果你了解规则,应用单元格样式就是小菜一碟。

由于文档中的样式内容不能超过4k,所以我创建了一个缓存easyxf函数,它在创建一个新样式之前,首先会尝试从缓存中拉取一个已有的样式。

class MyClass(object):
  kwd_mark = object()
  def cached_easyxf(self, string=‘‘, **kwargs):
    if not hasattr(self, ‘_cached_easyxf‘):
      self._cached_easyxf = {}
    key = (string,) + (self.kwd_mark,) + tuple(sorted(kwargs.items()))
    return self._cached_easyxf.setdefault(key, xlwt.easyxf(string, **kwargs))

Easyxf 字符串格式:

我做了一些小实验来找出通用格式。

例如,接收一个空格分隔的键值对数组的字符串格式。

‘KEY: KEY-VALUE VALUE, KEY-VALUE VALUE; KEY2: KEY-VALUE2 VALUE2′

sheet.write(0, 0, xlwt.easyxf(‘font: bold 1‘)) # bold
sheet.write(0, 0, xlwt.easyxf(‘font: bold 1, color: blue, underline single‘))

外文原文链接: http://yuji.wordpress.com/2012/04/19/python-xlwt-writing-excel-files/

时间: 2024-08-06 16:05:18

使用Python xlwt写excel文件的相关文章

python xlwt 写excel文件

python 写excel文件,需要xlwt库.下载地址:https://pypi.python.org/pypi/xlwt/1.1.2 下载后修改扩展名为rar, 解压后安装: 安装成功后就可以引用了.如下代码: # -*- coding: utf-8 -*- import xlwt '''往EXCEl单元格写内容,每次写一行sheet:页签名称:row:行内容列表:rowIndex:行索引'''def WriteSheetRow(sheet,rowValueList,rowIndex): i

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

关于写excel的格式控制,比如颜色等等 1 import xlwt 2 from datetime import datetime 3 4 font0 = xlwt.Font() 5 font0.name = 'Times New Roman' 6 font0.colour_index = 2 7 font0.bold = True 8 9 style0 = xlwt.XFStyle() 10 style0.font = font0 11 12 style1 = xlwt.XFStyle()

Python Show-Me-the-Code 第 0014,0015,0016 题 写Excel文件

第 0014 题: 纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示: { "1":["张三",150,120,100], "2":["李四",90,99,95], "3":["王五",60,66,68] } 请将上述内容写到 student.xls 文件中,如下图所示: 阅读资料 腾讯游戏开发 XML 和 Excel 内容相互转换 第 0015 题: 纯

python用xlwt写excel

例一,普通写入: # -*-coding: utf-8-*- import xlwt workbook = xlwt.Workbook() sheet = workbook.add_sheet('sheet 1') sheet.write(0,1,'test text')#第0行第一列写入内容 workbook.save('test.xls') 例二,把字典写入到excel中: #!/usr/bin/python #coding: utf-8 import xlsxwriter #创建一个新的x

JAVA读、写EXCEL文件

采用jxl.jar包,网上下载,百度一下到出都是.希望可以帮助到大家. 接下来直接贴代码: <span style="font-size:18px;">public List getValue(String fileName){ String str=ExcelOparations.readExcel(fileName).trim(); String[] str4n= str.split("\n"); List list1 = new ArrayList

是哟办法python读、写、追写excel文件

三个工具包 python操作excel的三个工具包如下 xlrd: 对excel进行读相关操作 xlwt: 对excel进行写相关操作 xlutils: 对excel读写操作的整合 注意,只能操作.xls,不能操作.xlsx. 这三个工具包都可以直接使用pip进行下载: sudo pip install xlrd sudo pip install xlwt sudo pip install xlutils xls文件的追写 xlwt只能创建一个全新的excel文件,然后对这个文件进行写入内容以及

python从Microsoft Excel文件中导入数据

excel中后缀为csv和xls,二者区别如下:1.xls 文件就是Microsoft excel电子表格的文件格式.2.csv是最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中. 此文件,一行即为数据表的一行.生成数据表字段用半角逗号隔开.csv是文本文件,用记事本就能打开,XLS是二进制的文件只有用EXCEL才能打csv文件是以逗号为分隔符号,将各字段列分离出的一种ASCII文件.csv(*.csv) 文件格式只能保存活动工作表中的单元格所显示的文本和数值.工作表中所有的数

Python 操作 MS Excel 文件

利用 Python 对 Excel 文件进行操作需要使用第三方库: openpyxl,可执行 pip install openpyxl 进行安装 1. 导入 openpyxl 模块 导入 openpyxl 模块后,利用它的 load_workbook() 方法可以打开一个 Excel 文件,该方法使用一个文件名称作为参数,示例如下: >>> import openpyxl >>> wb = openpyxl.load_workbook('example.xlsx') &

python之读取Excel 文件

1 # -*- coding: utf-8 -*- 2 """ 3 Created on Thu May 24 13:53:10 2018 4 5 @author: Frank 6 """ 7 8 import xlrd #xlrd is a library for reading data and formatting information from Excel files, whether they are .xls or .xlsx fi