码迷,mamicode.com
首页 > 编程语言 > 详细

自己总结python用xlrd\xlwt读写excel

时间:2015-05-22 18:48:11      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:

1.首先安装xlrd\xlwt模块

xlrd模块下载地址:

https://pypi.python.org/pypi/xlrd

xlwt模块下载地址:

https://pypi.python.org/pypi/xlwt

linux 安装命令 python setup.py install

windos 安装命令 setup.py install

 

2.使用方法大全

基础方法推荐请看这里:

http://blog.csdn.net/mr__fang/article/details/7089581

简单方法+例子:

http://www.jb51.net/article/65550.htm

稍微深入一点:

http://www.jb51.net/article/57699.htm

 

3.自己使用的总结

1.平时的使用看基础方法推荐的博客就够了.

2.写小程序的时候遇到个问题,首先新建一个

file = xlwt.Workbook() #注意这里的Workbook首字母是大写,无语吧

table = file.add_sheet(sheet name‘,cell_overwrite_ok=True)#新建一个sheet,并加重复操作参数

然后开始写

table.write(0,0,‘姓名)
table.write(1,0,‘张三‘)
#写了N多行... 

table.write(999,0,‘李四)

保存一份

file.save(‘一班信息.xls)

然后想用同样的首行(这里首行只写了一行,实际有很多,姓名,学好,性别,婚否,巴拉巴拉)

写另一份excel,就比如上面的是一班,这里写二班把

table.write(1,0,小王) #这里是二班的小王同学
#写了n多行,但是二班人比较少,很奇葩
table.write(10,0,小赵)
#二班只有10个人!!

保存另一份

file.save(二班信息.xls)

然后我们打开二班信息,你会发现出来前10个二班本来的信息之外,

11~999一班的同学全跑到二班来了?!!

解决办法

table.wirte(11,0,‘‘)#用空代替掉
#写了n多行,实际程序中用For,
#这里表示下要很辛苦的解决这个私自"转班"的事..
table.wirte(999,0,‘‘)#全部用空替换

最后再保存

file.save(正确的二班信息.xls)

到此,我想总结的第二条结束

 

3.linux下保存用中文名保存正常,windos下坑爹乱码问题

#coding:utf8

file.save(世界你好)#linux正常,win乱码

file.save(u世界你好.encode(GBK))# win正常

 

谢谢阅读,欢迎关注,互相学习!~

自己总结python用xlrd\xlwt读写excel

标签:

原文地址:http://www.cnblogs.com/frankcoder/p/4522864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!