python写入已存在的excel数据实例

yipeiwu_com6年前Python基础

python可以使用xlrd读excel,使用xlwt写excel,但是如果要把数据写入已存在的excel,需要另外一个库xlutils配合使用.

大概思路:

1、用xlrd.open_workbook打开已有的xsl文件

注意添加参数formatting_info=True,得以保存之前数据的格式

2、然后用,from xlutils.copy import copy;,之后的copy去从打开的xlrd的Book变量中,拷贝出一份,成为新的xlwt的Workbook变量

3、然后对于xlwt的Workbook变量,就是正常的:

通过get_sheet去获得对应的sheet,拿到sheet变量后,就可以往sheet中,写入新的数据

4、写完新数据后,最终save保存

源码例子:

import xlrd
import os
from xlutils.copy import copy
from xlwt import Style

def writeExcel(row, col, str, styl=Style.default_style):
 rb = xlrd.open_workbook(file, formatting_info=True)
 wb = copy(rb)
 ws = wb.get_sheet(0)
 ws.write(row, col, str, styl)
 wb.save(file)

style = xlwt.easyxf('font:height 240, color-index red, bold on;align: wrap on, vert centre, horiz center');
writeExcel(1, 1, 'hello world', style) 

如果需要excel原格式,需要加参数

formatting_info=True

如果需要加excel样式,传入样式字符串给xlwt.easyxf即可

合并单元格:

ws.write_merge(top_row, bottom_row, left_column, right_column, string)

以上这篇python写入已存在的excel数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现二维数组输出为图片

对于二维数组,img_mask [[ 0 0 0 ..., 7 7 7] [ 0 0 0 ..., 7 7 7] [ 0 0 0 ..., 7 7 7] ..., [266...

python 删除大文件中的某一行(最有效率的方法)

用 python 处理一个文本时,想要删除其中中某一行,常规的思路是先把文件读入内存,在内存中修改后再写入源文件。 但如果要处理一个很大的文本,比如GB级别的文本时,这种方法不仅需要占用...

Python的Django框架中自定义模版标签的示例

为了自定义一个模板标签,你需要告诉Django当遇到你的标签时怎样进行这个过程。 当Django编译一个模板时,它将原始模板分成一个个 节点 。每个节点都是 django.templat...

Python安装使用命令行交互模块pexpect的基础教程

一、安装 1、安装easy_install工具 wget http://peak.telecommunity.com/dist/ez_setup.py python ez_se...

修改Python的pyxmpp2中的主循环使其提高性能

引子 之前clubot使用的pyxmpp2的默认mainloop也就是一个poll的主循环,但是clubot上线后资源占用非常厉害,使用strace跟踪发现clubot在不停的poll,...