简单试了下python下excel的操作,使用了xlrd、xlwt和xlutil3;xlrd可以实现excel的读取操作,xlwt则是写入excel操作,xlutils3主要是为了修改excel,简单理解可以拷贝已有excel进行修改,生成新的excel表格。
安装包下载地址
http://pypi.python.org/pypi/xlrd
http://pypi.python.org/pypi/xlwt
参考文档地址
简单程序实例
  1. import xlrd
  2. import xlwt
  3. import xlutils3
  4. from xlutils3 import copy
  5. #测试xlwt
  6. #创建新的excel文件
  7. newfile = xlwt.Workbook()
  8. #创建新的表单
  9. #addsheet的格式add_sheet(sheetname, cell_overwrite_ok=False)
  10. newsheet = newfile.add_sheet('test1',cell_overwrite_ok=True)
  11. #索引从0,0开始
  12. newsheet.write(0,0,'aaa')
  13. newsheet.write(0,0,10)
  14. newfile.save('firsttest.xls')
  15. #打开相应的excel文件
  16. workbook = xlrd.open_workbook(r'firsttest.xls')
  17. #找到相应的sheet
  18. #可以通过index,index从0开始计算
  19. #也可以通过sheet的名字
  20. rdsheet = workbook.sheet_by_index(0)
  21. rdsheet = workbook.sheet_by_name('test1')
  22. print(rdsheet.cell(0,0))
  23. #cell函数返回的是Cell 对象)包含ctype value xf_index
  24. #输出number:10.0
  25. print(rdsheet.cell(0,0).ctype)
  26. #输出2?使用type查询结果为:<type 'member_descriptor'>具体含义?
  27. print(rdsheet.cell(0,0).value)
  28. #输出10.0
  29. print(rdsheet.cell(0,0).xf_index)
  30. #输出None
  31. rdbook = xlrd.open_workbook(r'firsttest.xls')
  32. wtbook = copy.copy(rdbook)
  33. wtsheet = wtbook.get_sheet(0)
  34. type(wtsheet)
  35. wtsheet.write(0,0,'aaaaa')
  36. wtbook.save('bb.xls')
  37. newrdbook = xlrd.open_workbook(r'bb.xls')
  38. print(newrdbook.sheet_by_name('test1').cell(0,0))
  39. #输出text:'aaaaa'
  40. print(rdbook.sheet_by_index(0).cell(0,0))
  41. #输出number:10.0
关于cell_overwrite_ok参数使用
  1. newsheet = newfile.add_sheet('test1')
  2. #索引从0,0开始
  3. newsheet.write(0,0,'aaa')
  4. newsheet.write(0,0,10)
  5. newfile.save('firsttest.xls')
弹出错误:Exception: Attempt to overwrite cell: sheetname=u'test1' rowx=0 colx=0
修改为不覆盖已经有赋值的单元格是可以操作的:
  1. newsheet = newfile.add_sheet('test1')
  2. #索引从0,0开始
  3. newsheet.write(0,0,'aaa')
  4. newsheet.write(0,1,10)
如果需要覆盖已经操作的单元格,需要设置cell_overwrite_ok=True:
  1. newsheet = newfile.add_sheet('test1',cell_overwrite_ok=True)
  2. #索引从0,0开始
  3. newsheet.write(0,0,'aaa')
  4. newsheet.write(0,0,10)

运行成功

如何在python扩展查询需要的信息

如:当最初只知道使用newfile = xlwt.Workbook();创建一个新的文件时;

后续操作查询:

可以通过type(newfile)得到类型<class 'xlwt.Workbook.Workbook'>;

然后时候使用help(xlwt.Workbook)查询Workbook对应的接口,当然使用help(newfile)也是可以的;

如此往复找到需要的细节信息;

 
 

python中使用xlrd、xlwt和xlutils3操作Excel的更多相关文章

  1. Python中对 文件 的各种骚操作

    Python中对 文件 的各种骚操作 python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getc ...

  2. Python中实现对list做减法操作介绍

    Python中实现对list做减法操作介绍 这篇文章主要介绍了Python中实现对list做减法操作介绍,需要的朋友可以参考下 问题描述:假设我有这样两个list, 一个是list1,list1 = ...

  3. 【转】经典!python中使用xlrd、xlwt操作excel表格详解

    最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...

  4. python中使用xlrd读excel使用xlwt写excel

    原文地址 :http://www.bugingcode.com/blog/python_xlrd_read_excel_xlwt_write_excel.html 在数据分析和运营的过程中,有非常多的 ...

  5. Python -- xlrd,xlwt,xlutils 读写同一个Excel

    最近开始学习python,想做做简单的自动化测试,需要读写excel,然后就找到了xlrd来读取Excel文件,使用xlwt来生成Excel文件(可以控制Excel中单元格的格式),需要注意的是,用x ...

  6. python中的xlrd模块学习

    1.xlrd模块主要用于excel表格的读取,支持xlsx和xls:xlwt主要用于excel的写,库的读取 2.常用单元格中的数据类型 0.empty(空的):1.string(text):2.nu ...

  7. python模块之xlrd,xlwt,读写execl(xls,xlsx)

    安装xlrd,xlwt pip install xlrd xlwt xlrd读取execl [环境ipython python2.7.5] import xlrd book = xlrd.open_w ...

  8. python中的字符串(str)操作

    字符串是python中数据类型.一般就单引号(‘’)或双引号(“”)引起来的内容就是字符串. 例如:下面两个都是定义字符串 str1 = "hello world" str2 = ...

  9. python学习笔记(十):操作excel

    一.python操作excel,python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的 ...

随机推荐

  1. SGD训练时收敛速度的变化研究。

    一个典型的SGD过程中,一个epoch内的一批样本的平均梯度与梯度方差,在下图中得到了展示. 无论什么样的网络结构,无论是哪一层网络的梯度,大体上都遵循下面这样的规律: 高信号/噪音比一段时间之后,信 ...

  2. Java-常用工具方法

    一 Json转换 1 输出组装好的json ObjectMapper mapper = new ObjectMapper(); try { String requiredJson = mapper.w ...

  3. 大面积project.pbxproj冲突问题解决

    在团队开发中,经常会有project.pbxproj的冲突出现. 所以我们添加过新的文件后,要及时的提交,养成好习惯.以免出问题. 但是总有一些时候忘记提交出现大面积的冲突,然后把==== <& ...

  4. Mysql 导入导出表结构与数据

    1.导出整个数据库 mysqldump -u用户名 -p密码  数据库名 > 导出的文件名  C:\Users\jack> mysqldump -uroot -pmysql account ...

  5. su与su -的区别

    su命令从普通用户切换到root用户下虽然可以切换,但是切换过后它所属的环境变量没有切换回原本属于root本身该有的环境变量,使用su - root 就可以切换会本来用户所属自身的变量

  6. vb.net WIN32API 获取listview的值

    Public Class Form1 Public Const LVM_FIRST As Short = &H1000S Public Const LVM_GETITEMCOUNT As In ...

  7. MySql技术内幕之MySQL入门(1)

    目录 MySql技术内幕之MySQL入门(1) 安装 关于注释 执行SQL语句 关于命令大小写 创建数据库 查看表的信息 查看更加详细的信息 查看与给定模式相匹配的列 插入数据 利用insert添加行 ...

  8. 一招让 IOS 自动化化快的飞起

    前言 最近在做IOS自动化测试,IOS的Appium环境都配置OK,Demo脚本运行没有问题,多开执行没有问题,IOS安卓统一平台调度集成没有问题,可以进行自动化测试.课时真正执行用例时发现个严重问题 ...

  9. future项目上报

    private String name;//预警名称 private String detail;//详细 用于定义位置和报错信息,越多越好private String code;//编码 1001是 ...

  10. 安装kylin的艰难历程

    前言:暑假里老师布置的任务没有完成,来到学校后马不停蹄的安装kylin,结果一路艰难险阻,搞了快两个星期都没有弄好....现在止步于hive阶段卡死...仅将之前的步骤记录下来以便重新安装时更加顺利. ...