Python对Excel操作详解-.pdf





《Python对Excel操作详解-.pdf》由会员分享,可在线阅读,更多相关《Python对Excel操作详解-.pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、太仓同维电子有限公司测试中心软件测试科拟制人胡张东审批人xxx时间2013-11-04Python 对 Excel 操作详解文档摘要:本文档主要介绍如何通过python 对 office excel进行读写操作,使用了 xlrd、xlwt 和 xlutils模块。另外还演示了如何通过Tcltcom 包对 excel 操作。关键字:Python、Excel、xlrd、xlwt、xlutils、TCl、tcom1Python 简介Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰
2、,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块。与 Scheme、Ruby、Perl、Tcl 等动态语言一样,Python 具备垃圾回收功能,能够自动管理存储器使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python 虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如 py2exe、PyPy、PyInstaller 之类的工具可以将Python 源代码转换成可以脱离Python解释器运行的程序。2Python 安装Python 目前的版本已经更新到3.4.0,本文使用的版本为2.7.5,所有的
3、版本都可以在python 官网 http:/www.python.org/下载,至于2.x 和 3.x 版本的具体区别也可以在官网查看。从官网下载了python 2.7.5 安装文件python-2.7.5.msi 后,直接双击就可以安装python了,可以选择安装路径,我改为了,然后一路next 就完成安装了,安装完成后在 C 盘下就多了一个文件夹Python2.7.5。Python 也是一种实时交互语言,可以通过自带的IDLE 编写 python 语句并反馈回显信息,可以通过图1 方式调出 python IDLE。图 1也可以在cmd 下输入 python,但默认情况下python 并没有
4、添加到windows 环境变量中,导致在cmd 下输入 python 的时候出现提示“python 不是内部或外部命令,也不是可运行的程序或批处理文件。”,windows 下可执行文件在运行时首先在当前目录下搜索,因为进入 cmd 下默认路径一般为C:Documents andSettingsAdministrator,而在这个路径下是找不到 python 的,所以提示出错,可以进入到python 安装目录下,然后执行python 就可以进入交互命令行模式下。如果懒的每次都进入python 安装,此时需要将python 安装路径添加到系统变量中,然后 windows 在执行命令的时候会去环境变
5、量中查找路径,具体配置如图2所示,在 Path 中添加 python 的安装路径“C:Python2.7.5;”,主要路径后面要加”;”分号表面这是一个路径的结束,此时无论在哪个路径下都可以执行python 调出交互命令行。图 23Python 语法入门在 Python 简介中提到Python 是一种直译式电脑编程语言,体现在语法中,如要将变量 a 赋值为 1,Tcl 使用命令%set a 1(本文中为了区分Tcl 和 Python 的命令,Tcl 命令前会加上“%”,否则默认为Python 命令),在 python 中命令为a=1,输出 a 的值可以直接输入a,也可以通过print 语句输出
6、a 的值,命令为print a(在 python 3.0 以后版本中,print 不再是一个语句,而是一个函数,所以如果想要输出a,用法为print(a))。在 Tcl 中求 1 和 10 的和或者变量之间的加减乘除运算需要使用expr 命令,在 python 则直接写表达式就可以了,如图 3 所示。图 3Python 很多功能都是靠模块实现的,比如ftplib 模块负责ftp 功能的实现,math 模块囊括了基本数学公式,如果我们想要引用这些模块,需要使用命令import模块名称,如import ftplib和 import math。如 果 想 使 用 math 模 块 中 的 函 数 f
7、loor,可 以 使 用 命 令math.floor(28.5),语法为“模块.函数”,如果想要直接使用floor 函数,必须提前引用,命令为 from math import floor,那样就可以直接使用命令floor(28.5)了。如果觉得floor 这个函数名称太长了或者不好记忆,可以通过变量引用函数,如f=math.floor,这样变量f 就充当了math.floor 的功能了。上面提到的模块ftplib 和 math 都是在 python 安装的时候已经安装了,而接下来重点介绍的xlrd、xlwt、xlutils 模块都不是随python 安装的。需要手动下载安装,第 5 节会详细
8、介绍模块的安装。当成功导入了某个模块后,可以通过函数dir(模块名)查看这个模块包含哪些函数,如果对某个函数的作用不了解,可以通过help 函数查看,如help(math.pow)本文只是带领大家入门,python 的其他语法可以参考其它资料学习。4Tcl 对 Excel 操作在使用 python 对 excel 操作之前搜索过如何通过Tcl 对 excel 操作,Tcl 本身没有提供对 excel 操作的命令,可以通过tcom 外部包来调用excel 的接口实现,但是个人感觉实现起来比较麻烦,msdn 网站上虽然提供了excel 的接口,但示例都是针对VB 脚本语言写的,Tcl如果想要调用的
9、话还需要转换,如下是一段简单的Tcl 代码展示如何通过tcom 对 excel 进行操作,但也花了本人不少时间琢磨。#加载 tcom 包packagerequire tcomsetfilename F:/1.xls#创建 com 实例,打开工作表,下面四句都是套路setexcel:tcom:ref createobject Excel.Applicationsetworkbooks$excel Workbookssetworkbook$workbooks Open$filenamesetworksheets$workbook Worksheets#sheet1为 sheet的名称setwork
10、sheet$worksheets Item sheet1#创建单元格对象setcells$worksheet Cells#给单元格B2 赋值为“hsdf”$cells Item 2 B hsdf#获取 sheet的个数并赋值给sheetCountsetsheetCount$worksheets Count#获取 A1 至 A15 单元的范围对象setrange$worksheet RangeA1 A15#给 A1 至 A15 单元赋值$range Value2 abcdefg#获取 A1 至 A15 的值,并赋值给A,A 是一个列表listsetA$range Value2#设置单元的背景色s
11、etinterior$range Interior$interior Color expr 0 x00FFE0#设置单元的前景色和字体大小、加粗、斜体、字体setfont$range Font$font Color expr 0 xFF0000$font Bold 1$font Size 10$font Italic 0$font Name 华文行楷#设置单元格的宽度为自动调整setentire$range EntireColumn$entire AutoFit#保存文档$workbook Save#显示 Excel$excel Visible 15xlwt 和 xlrd 模块的安装Pytho
12、n 也是通过导入外部模块来实现对excel 的操作,xlrd 负责对 excel 的读取,xlwt负责对 excel 的写入,xlutils 依赖于 xlrd 和 xlwt,可以复制excel 文件。这三个包都可以在网站 http:/www.python-excel.org/下载。本文使用的xlrd 版本为 0.8.0,xlwt 版本为 0.7.5。从网上下载好xlrd 和 xlwt 后,解压缩到 C:Python2.7.5Lib 下,此时在命令行下输入import xlrd或者 import xlwt,会出现提示ImportError:No module named xlwt,这表明还没有安
13、装xlwt模块。python 导入一个模块的过程要求有一个叫做“路径搜索”的操作过程,即是在文件系统“预先设定的区域”查找模块文件以加载模块的过程。这个预先设定的区域其实是python搜索路径的一组目录。这个目录保存在sys.path 中,如果你想知道python 导入模块时会在哪些路径搜索模块,你可以执行以下命令查看搜索路径目录:import sys sys.pathD:pythonshell2.7.5,C:Python2.7.5Libidlelib,C:Python2.7.5libsite-packagessetuptools-1.3-py2.7.egg,C:Python2.7.5libs
14、ite-packagesxlutils-1.7.0-py2.7.egg,C:Windowssystem32python27.zip,C:Python2.7.5DLLs,C:Python2.7.5lib,C:Python2.7.5libplat-win,libsite-packageswin32,C:Python2.7.5libsite-packageswin32lib,C:Python2.7.5libsite-packagesPythonwin在 sys.path 中找到一个路径为C:Python2.7.5lib,所以我们把模块解压缩到这个目录下。命令sys.path.append(C:Pyt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python Excel 操作 详解

限制150内