简单试了下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)也是可以的;

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

 
 

最新文章

  1. 【工作笔记】BAT批处理学习笔记与示例
  2. bzoj3756: Pty的字符串
  3. 为什么模板函数的声明和实现都放在.h文件中
  4. CSS3盒模型之box-sizing
  5. URAL1049. Brave Balloonists
  6. 关于iOS6应用中第三方类库不支持armv7s的问题解决
  7. [Javascript] String method: endsWith() &amp;&amp; startsWith()
  8. windows安装PHP5.4.13 +Apache2.4.4(转)
  9. &lt;audio&gt; 标签简介
  10. mysql数据备份和还原命令
  11. linux下mysql root密码忘记修改方法
  12. 状态模式、职责链模式——省去if-else的繁琐结构
  13. Linux驱动学习1.hello world;
  14. tf.Variable() 与tf.get_variable()的区别
  15. 编剧小记 — Contour
  16. 解决centos7命令行中文乱码
  17. [ZJOI2006]皇帝的烦恼
  18. Windows 10正式版的历史版本
  19. pycharm的常用快捷键
  20. POJ 2184(01背包)(负体积)

热门文章

  1. @无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 通篇引用
  2. 图数据库-Neo4j使用
  3. 团队-爬取豆瓣Top250电影-团队-阶段互评
  4. js 控制光标到指定位置
  5. JAVA:简单添加菜单界面(swing)第二版
  6. 创建JUtil
  7. _ZNote_Window_技巧_删除开机启动项
  8. PIL库图像处理
  9. RabbitMQ “Hello world!”
  10. 《HTTP权威指南》2-URL