Python中使用第三方库xlutils来追加写入Excel文件示例

yipeiwu_com6年前Python基础

目前还没有更好的方法来追写Excel,lorinnn在网上搜索到以及之后用到的方法就是使用第三方库xlutils来实现了这个功能,主体思想就是先复制一份Sheet然后再次基础上追加并保存到一份新的Excel文档中去。

使用xlutils

代码实现如下:

# -*- coding: utf-8 -*- 
''' 
Created on 2012-12-17 
 
@author: walfred 
@module: XLRDPkg.write_append 
@description: 
'''  
import os 
from xlutils.copy import copy 
import xlrd as ExcelRead 
 
def write_append(file_name): 
  values = ["Ann", "woman", 22, "UK"] 
 
  r_xls = ExcelRead.open_workbook(file_name) 
  r_sheet = r_xls.sheet_by_index(0) 
  rows = r_sheet.nrows 
  w_xls = copy(r_xls) 
  sheet_write = w_xls.get_sheet(0) 
 
  for i in range(0, len(values)): 
    sheet_write.write(rows, i, values[i]) 
 
  w_xls.save(file_name + '.out' + os.path.splitext(file_name)[-1]); 
 
if __name__ == "__main__": 
  write_append("./test_append.xls")

追写前

name sex  age country
jim  man  19 USA
hmm  woman 24 CHN
lilei man  24 CHN

追写后

name  sex  age country
jim  man  19 USA
hmm  woman 24 CHN
lilei man  24 CHN
Ann  woman 22 UK

相关文章

django-rest-framework 自定义swagger过程详解

django-rest-framework 自定义swagger过程详解

前言 之前的文章编写了一个返回json的例子,直接用浏览器进行get请求虽然成功了, 但是接口文档的样式很难看, 不好用. 而且提示没有访问权限. 我们一般都希望能够直接在接口文档中...

Python编程之Re模块下的函数介绍

re模块下的函数 compile(pattern):创建模式对象 import re pat=re.compile('A') m=pat.search('CBA')...

python实现多进程通信实例分析

python实现多进程通信实例分析

操作系统会为每一个创建的进程分配一个独立的地址空间,不同进程的地址空间是完全隔离的,因此如果不加其他的措施,他们完全感觉不到彼此的存在。那么进程之间怎么进行通信?他们之间的关联是怎样的?...

Python Django实现layui风格+django分页功能的例子

Python Django实现layui风格+django分页功能的例子

第一步:首先定义一个视图函数,用于提供数据,实现每页显示数据个数,返回每页请求数据 from django.shortcuts import render from django.c...

一行代码让 Python 的运行速度提高100倍

python一直被病垢运行速度太慢,但是实际上python的执行效率并不慢,慢的是python用的解释器Cpython运行效率太差。 “一行代码让python的运行速度提高100倍”这绝...