在Python中使用XLWT在Excel中附加行 [英] append rows in Excel using XLWT in Python

查看:91
本文介绍了在Python中使用XLWT在Excel中附加行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在Python中使用XLWT或XLRD查找总行数?我有一个excel文件(accounts.xls),想在其中添加行.

How to find total number of rows using XLWT or XLRD in Python? I have an excel file(accounts.xls) and would like to append rows in it.

我在这里遇到错误-AttributeError:"Sheet"对象没有属性"write"

I am getting an error here - AttributeError: 'Sheet' object has no attribute 'write'

from xlrd import open_workbook
from xlwt import Workbook
def saveWorkSpace(fields,r):
    wb = open_workbook('accounts.xls')
    ws = wb.sheet_by_index(0)
    r = ws.nrows
    r += 1
    wb = Workbook()
    ws.write(r,0,fields['name'])
    ws.write(r,1,fields['phone'])
    ws.write(r,2,fields['email'])
    wb.save('accounts.xls')
    print 'Wrote accounts.xls'

推荐答案

以下是上述问题的解决方法

Here is the solution of the above question

import xlrd
import xlwt
from xlutils.copy import copy
def saveWorkSpace(fields):
    rb = xlrd.open_workbook('accounts.xls',formatting_info=True)
    r_sheet = rb.sheet_by_index(0) 
    r = r_sheet.nrows
    wb = copy(rb) 
    sheet = wb.get_sheet(0) 
    sheet.write(r,0,fields['name'])
    sheet.write(r,1,fields['phone'])
    sheet.write(r,2,fields['email'])
    wb.save('accounts.xls')
    print 'Wrote accounts.xls'

这篇关于在Python中使用XLWT在Excel中附加行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆