使用Python处理Excel表格
http://cocobear.info/blog/2009/01/16/use-python-deal-with-excel/
使用Python处理Excel表格 2009年01月16日
给俺的boss写的一个小工具,使用Python对Excel进行统计,然后把结束生成一个新的Excel表格,使用到了xlrd和pyExcelerator两个库。
简单的介绍一下这两个库,先说xlrd,这个库读Excel比较方便,各种方法使用起来也挺方便:
bk = xlrd.open_workbook('your.xls')
sh = bk.sheets()[-1]
上面两句就可以打开Excel表格中的一个sheet,sheets得到的是一个list,存放所有的sheet。
sh.nrows是该sheet中的行数,知道这个后就可以使用for循环来读所有的单元格了:
sh.row(i)[3]这个就代表第i行的第4列。
再看看pyExcelerator,这个用起来有点别扭:
sheets = parse_xls('result.xls')
先打开一个表格,sheets是一个list,包含了所有表格的内容,每一项就是一个sheet,而每个sheet是二元tuple,第一个是该sheet的名字,第二个是一个dict,dict的key是一个二元组,表示单元格的坐标,如(0,0),第一行第一列。
从上面的分析中可以得出要访问Excel中第一个sheet的第一行第一列元素需要:
sheets[0][1][(0,0)]
pyExcelerator也不能得到行列数。
写文件也比较简单:
wb = Workbook()
ws = wb.add_sheet('result')
ws.write(0,0,“hello”)
wb.save('result.xls')
就不解释了:-)
写文件时需要注意直接写Unicode内容进去,而不要写编码过的内容。
本文来源于可可熊的窝 http://cocobear.info/blog , 原文地址: http://cocobear.info/blog/2009/01/16/use-python-deal-with-excel/
相关文档:
#堆排序
def Heapify(mylist, start, end):
left = 0
right = 0
maxv = 0
left = start * 2
right = start * 2 + 1
while left <= end:
maxv = left
if right <= end:
if mylist[left] < mylist[right]:
maxv = right
......
情景一:
在文件夹里有六十多个RM格式的视频文件,我现在需要把它们的文件名都提取出来,并去掉文件的扩展名,以便放到需要的网页里。
应该有什么软件可以完成这个简单的要求,可是一时间到哪里去找这 样一个符合要求的软件呢?总不能手工完成把。在Linux上用强大的shell脚本应该也可以完成,可是使用Windows的朋友呢?其 ......
参考链接:http://www.woodpecker.org.cn/diveintopython/functional_programming/dynamic_import.html
一 动态导入模块
Python的import不能接受变量,所以应该用 __import__函数来动态导入。
如下的代码无法正常导入模块
modules = ['OpenSSL', 'Crypto', 'MySQLdb', 'sqlite3', 'zope.interface', 'pyasn1', 'twisted ......
Python最大的特点就在于她的快速开发功能。作为一种胶水型语言,python几乎可以渗透在我们编程过程中的各个领域。这里我简单介绍一下用python进行gui开发的一些选择。
1.Tkinter
Tkinter似乎是与tcl语言同时发展起来的一种界面库。tkinter是python的配备的标准gui库,也是opensource的产物。Tkinter可用于win ......
昨天在研究了几天PHP-GTK后,决定转向Python,因为Python具有多线程这个特点,在与系统交互方面也比较有优势,虽然我很喜欢PHP,PHP在网页方面也非常强大,但毕竟我不是搞网站开发的。
想下个Python吧,发现它居然被和谐了,太诡异了
唉,和谐有理,屏蔽无罪! ......