`
cutecoot
  • 浏览: 120391 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python中使用xlrd和xlwt进行excel的读写和格式设定

 
阅读更多

在用python处理excel表的时候出现了一些问题,记录下最后的实现方式和问题解决方法。

脚本里先注明# -*- coding:utf-8 -*-   

 

1.  确认源excel存在并用xlrd读取第一个表单中每行的第一列的数值。

 

import xlrd, xlwt
import os

assert os.path.isfile('source_excel.xls'),"There is no timesheet exist. Exit..."

book = xlrd.open_workbook('source_excel.xls')
sheet=book.sheet_by_index(0)

for rows in range(sheet.nrows):
    value = sheet.cell(rows,0).value

 

 

2. 用xlwt准备将从源表中读出的数据写入新表,并设定行宽和表格的格式。合并单元格2行8列后写入标题,并设定格式为之前定义的tittle_style。使用的是write_merge。

 

wbk = xlwt.Workbook(encoding='utf-8')
sheet_w = wbk.add_sheet('write_after', cell_overwrite_ok=True)
sheet_w.col(3).width = 5000
tittle_style = xlwt.easyxf('font: height 300, name SimSun, colour_index red, bold on; align: wrap on, vert centre, horiz center;')
sheet_w.write_merge(0,2,0,8,u'这是标题',tittle_style)

 

 

3. 当函数中要用到全局变量时,注意加global。否则会出现UnboundLocalError:local variable'xxx' referenced before assignment.

 

check_num = 0

def check_data(sheet):
    global check_num
    check_num=check_num+1

 

 

4. 写入日期和带格式的数值。原来从sheet中读取的日期格式为2014/4/10,处理后只保留日期并做成数组用逗号分隔后写入新的excel。

 

date_arr = []
date=sheet.cell(row,2).value.rsplit('/')[-1]
if date not in date_arr:
     date_arr.append(date)
sheet_w.write_merge(row2,row2,6,6,date_num, normal_style)
sheet_w.write_merge(row2,row2,7,7,','.join(date_arr), normal_style)

 

 

5. 当从excel中读取的日期格式为xldate时,就需要使用xlrd的xldate_as_tuple来处理为date格式。先判断表格的ctype确实是xldate才能开始操作,否则会报错。之后date格式可以使用strftime来转化为string。如:date.strftime("%Y-%m-%d-%H")

 

from datetime import date,datetime
from xlrd import xldate_as_tuple

if (sheet.cell(rows,3).ctype == 3):
        num=num+1
        date_value = xldate_as_tuple(sheet.cell_value(rows,3),book.datemode)
        date_tmp = date(*date_value[:3]).strftime("%d")

 

6. 最后保存新写的表

wbk.save('new_excel.xls')

 

 

0
0
分享到:
评论

相关推荐

    python【视频讲解】1.1 读写 用必备利器 xlrd + xlwt 读写 Excel

    python课时13【视频讲解】1.1 读写 用必备利器 xlrd + xlwt 读写 Excel

    Python操作Excel模块 xlrd和xlwt和xlutils

    xlutils库则是在读写Excel文件时用于辅助修改的工具,它依赖于xlrd和xlwt。它可以复制一个Excel文件,然后在副本上进行修改,以防止对原始文件造成破坏。使用xlutils的常见操作包括: 1. 安装xlutils模块:`pip ...

    Python最新xlrd,xlwt模块

    总之,xlrd和xlwt是Python处理Excel文件的重要库,它们提供了丰富的功能,使得在Python中对Excel进行读写变得简单高效。在2015年的版本xlrd-0.9.4和xlwt-1.0.0中,已经能够满足大多数基本需求,但在后续的开发中,...

    python使用xlrd与xlwt对excel的读写和格式设定

    本文主要介绍了python使用xlrd与xlwt对excel的读写和格式设定,下面话不多说,来看看详细的实现过程。 脚本里先注明# -*- coding:utf-8 -*-  1. 确认源excel存在并用xlrd读取第一个表单中每行的第一列的数值。 ...

    python对excel处理的xlwt xlrd模板

    在实际应用中,你可能会遇到需要同时使用xlrd和xlwt的情况,例如读取现有Excel数据,进行处理后再写入新的Excel文件。通过这两个库,Python可以很好地实现Excel数据的读写操作,极大地提高了工作效率。 在提供的...

    python使用xlrd和xlwt读写Excel文件的实例代码

    Python是一种广泛使用的编程语言,尤其在数据处理领域中,它提供了许多库来简化与各种文件格式的交互,其中包括Excel文件。在Python中,`xlrd` 和 `xlwt` 是两个常用的库,分别用于读取和写入Excel文件。本文将详细...

    python对excel表格操作xlrd和xlwt下载

    pandas库内置了对xlrd和xlwt的支持,可以直接读写Excel文件,且支持.xlsx格式,使用起来更为便捷。 总结一下,Python的xlrd和xlwt库是处理Excel文件的基础工具,对于学习Python数据处理的初学者来说,掌握这两个库...

    python基于xlrd&xlwt读写excel

    实现对 xls 格式的 excel 表格的 增改查 实现对 xls 单元格样式和宽度的设置 实现自由切换sheet读写数据 弊端: 1. 所有数据的增改只能在下一次实例化才会生效 2. 只能操作已存在的excel 依赖: 1. xlrd 2. xlwt ...

    python读取excel数据绘制简单曲线图的完整步骤记录

    python读写excel文件有很多种方法: 用xlrd和xlwt进行excel读写 用openpyxl进行excel读写 用pandas进行excel读写 本文使用xlrd读取excel文件(xls,sxls格式),使用xlwt向excel写入数据 一、xlrd和xlwt的安装 安装...

    python_Excel安裝包xlrd_xlwt_xlutils.rar

    在实际项目中,Python开发者经常结合pandas库,利用xlrd和xlwt(或openpyxl,用于.xlsx格式)来读写Excel数据。例如,使用pandas的`read_excel`函数读取数据,然后用`to_excel`函数将DataFrame对象写入Excel。这样,...

    python 的excel支持库excel xlrd xlwt xlutils打包

    总的来说,Python的xlrd、xlwt和xlutils库是处理Excel文件的强大工具,尤其在数据分析、报表生成和自动化任务中有着广泛的应用。它们结合使用,可以实现对Excel文件的全面操作,无论是读取、写入还是格式调整,都能...

    python-操作excel,使用xlrd、xlutils、xlwt读写excel、设置样式

    目录一、使用xlrd读取excel二、使用xlrd + xlutils写入数据三、使用xlwt设置样式常见问题1.PermissionError2....结合xlrd使用,实现读写excel .xls 和 .xlsx (保存只能用.xls) 一、使用xlrd读取excel impor

    Python自动化办公Excel库xlrd与xlwt常用操作详解.pdf

    这时,可以考虑使用xlutils库,它可以配合xlrd和xlwt进行读写操作,比如在写入新数据时,可以先用xlrd读取原文件,再用xlwt写入新数据,最后利用xlutils更新原文件。 对于.xlsx文件的处理,xlwings和openpyxl是更好...

    Python对Excel操作详解,很好用,里面有xlrd, xlwt怎么使用。.zip

    在Python编程中,处理Excel文件...总结起来,Python的xlrd和xlwt库为处理Excel文件提供了强大的工具,使得在Python环境中进行数据操作变得简单而高效。通过学习和实践,你可以熟练掌握这些库,提高数据处理的工作效率。

    python项目实例代码源码- Excel_xlrd读_xlwt写.zip

    总的来说,这个压缩包中的代码实例展示了如何在Python中利用xlrd和xlwt库进行Excel文件的读写操作,这对于数据分析、报表生成或自动化任务是非常有价值的。通过学习和理解这些知识点,你可以更好地处理Python与Excel...

    Excel-xlrd读-xlwt写

    xlwt则是用于创建和写入Excel文件的Python库,它与xlrd相辅相成,实现了Excel文件的读写全链路操作。xlwt的主要特性包括: 1. **创建新文件**:使用`Workbook()`函数创建一个新的Workbook对象,然后可以添加新的...

    Python第三方库xlrd/xlwt的安装与读写Excel表格

    相信大家都应该有所体会,在平时经常会遇到处理 Excel 表格数据的情况,人工处理起来实在是太麻烦了,我们可以使用 Python 来解决这个问题,我们需要两个 Python 扩展, xlrd 和 xlwt 。 xlrd和xlwt是Python的第三方...

Global site tag (gtag.js) - Google Analytics