欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    Python对Excel操作详解-.pdf

    • 资源ID:76261114       资源大小:635.78KB        全文页数:11页
    • 资源格式: PDF        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Python对Excel操作详解-.pdf

    太仓同维电子有限公司测试中心软件测试科拟制人胡张东审批人xxx时间2013-11-04Python 对 Excel 操作详解文档摘要:本文档主要介绍如何通过python 对 office excel进行读写操作,使用了 xlrd、xlwt 和 xlutils模块。另外还演示了如何通过Tcltcom 包对 excel 操作。关键字:Python、Excel、xlrd、xlwt、xlutils、TCl、tcom1Python 简介Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块。与 Scheme、Ruby、Perl、Tcl 等动态语言一样,Python 具备垃圾回收功能,能够自动管理存储器使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python 虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如 py2exe、PyPy、PyInstaller 之类的工具可以将Python 源代码转换成可以脱离Python解释器运行的程序。2Python 安装Python 目前的版本已经更新到3.4.0,本文使用的版本为2.7.5,所有的版本都可以在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 并没有添加到windows 环境变量中,导致在cmd 下输入 python 的时候出现提示“python 不是内部或外部命令,也不是可运行的程序或批处理文件。”,windows 下可执行文件在运行时首先在当前目录下搜索,因为进入 cmd 下默认路径一般为C:Documents andSettingsAdministrator,而在这个路径下是找不到 python 的,所以提示出错,可以进入到python 安装目录下,然后执行python 就可以进入交互命令行模式下。如果懒的每次都进入python 安装,此时需要将python 安装路径添加到系统变量中,然后 windows 在执行命令的时候会去环境变量中查找路径,具体配置如图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 语句输出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 模 块 中 的 函 数 floor,可 以 使 用 命 令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 节会详细介绍模块的安装。当成功导入了某个模块后,可以通过函数dir(模块名)查看这个模块包含哪些函数,如果对某个函数的作用不了解,可以通过help 函数查看,如help(math.pow)本文只是带领大家入门,python 的其他语法可以参考其它资料学习。4Tcl 对 Excel 操作在使用 python 对 excel 操作之前搜索过如何通过Tcl 对 excel 操作,Tcl 本身没有提供对 excel 操作的命令,可以通过tcom 外部包来调用excel 的接口实现,但是个人感觉实现起来比较麻烦,msdn 网站上虽然提供了excel 的接口,但示例都是针对VB 脚本语言写的,Tcl如果想要调用的话还需要转换,如下是一段简单的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的名称setworksheet$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#设置单元的背景色setinterior$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 模块的安装Python 也是通过导入外部模块来实现对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,这表明还没有安装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.5libsite-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:Python2.7.5lib)在最后添加一个目录,sys.path.insert(0,C:Python2.7.5lib)在第一位插入一个目录。解压缩完成并放在正确目录后,在cmd 下进入package 当前目录,然后输入命令“C:Python2.7.5Libxlrd-0.8.0pythonsetup.py install”,安装完成后可以输入import xlrd,dir(xlrd)来确认是否已经安装正确。6xlrd 简单使用方法import xlrdexcel=xlrd.open_workbook(C:UsersHuZhangdongDesktopASB测试床环境信息图.xls)#打开文件并将对象存储到excel 中sheet=excel.sheet_by_index(0)#通过索引读取sheet对象,第一个sheet的索引为 0row_3=sheet.row_values(2)#读取第 3 行的所有数据,并以列表的形式存储到row_3 中col_3=sheet.col_values(2)#读取第 3 列的所有数据,并以列表list 的形式存储到col_3 中cell_12_7=sheet.cell_value(11,6)#读取第 12 行第 7 列的数据,并存储到cell_12_7 中cell_11_11=sheet.cell(10,10).value#读取第 11 行第 11 列的数据,并存储到cell_11_11 中cell_7_8=sheet.row(6)7.value#读取第 7 行第 8 列的数据cell_7_8=sheet.cel(7)6.value#读取第 8 列第 7 行的数据num_rows=sheet.nrows#读取 sheet的总行数num_cols=sheet.ncols#读取 sheet的总列数基本上面的命令已经可以满足目前对excel 读取的操作了,接下给大家讲解xlwt 的用法。7xlwt 简单使用方法#-*-coding:UTF-8-*-#设置编码格式为utf-8import os,xlwt,datetime#导入模块data=xlwt.Workbook()#新建一个Workbooksheet=data.add_sheet(usheet)#新建一个 sheet,名称为 sheetstyle1=xlwt.XFStyle()#创建格式style1style2=xlwt.XFStyle()style3=xlwt.XFStyle()#设置字体格式font1=xlwt.Font()#创建 font1font1.name=Times New Roman#字体为 Times New Romanfont1.bold=True#加粗font1.colour_index=2#字体颜色为红色,0=Black,1=White,2=Red,3=Green,4=Blue,5=Yellow,6=Magenta,7=Cyanfont1.underline=xlwt.Font.UNDERLINE_DOUBLE#下划线类型,UNDERLINE_DOUBLE代表双下划线,另外还有UNDERLINE_NONE,UNDERLINE_SINGLE,UNDERLINE_SINGLE_ACC,UNDERLINE_DOUBLE,UNDERLINE_DOUBLE_ACCfont1.escapement=xlwt.Font.ESCAPEMENT_SUPERSCRIPT#设置上标font1.family=xlwt.Font.FAMILY_ROMANfont1.height=0 x190#0 x190 是 16 进制,换成 10 进制为 400,然后除以 20,就得到字体的大小为 20style1.font=font1#将创建的 font1 字体格式应用到style1 上font2=xlwt.Font()#创建 font2font2.name=Algerian#字体为 Algerianfont2.colour_index=3#字体颜色为绿色font2.italic=True#斜体font2.struck_out=True#删除线font2.height=0 x258#字体大小为30style2.font=font2#将创建的 font2 字体格式应用到style2 上#设置列宽sheet.col(0).width=6000sheet.col(1).width=12000sheet.set_col_default_width(2)#设置单元格对齐方式alignment=xlwt.Alignment()#创建 alignmentalignment.horz=xlwt.Alignment.HORZ_CENTER#设 置 水 平 对 齐 为 居 中,May be:HORZ_GENERAL,HORZ_LEFT,HORZ_CENTER,HORZ_RIGHT,HORZ_FILLED,HORZ_JUSTIFIED,HORZ_CENTER_ACROSS_SEL,HORZ_DISTRIBUTEDalignment.vert=xlwt.Alignment.VERT_CENTER#设 置 垂 直 对 齐 为 居 中,May be:VERT_TOP,VERT_CENTER,VERT_BOTTOM,VERT_JUSTIFIED,VERT_DISTRIBUTEDstyle3.alignment=alignment#应用 alignment 到 style3 上#插入时间style3.num_format_str=YYYY-MM-DDHH:MM:SS#设置时间格式sheet.write(1,1,datetime.datetime.now(),style3)#在第 2行第 2列插入当前时间,格式为 style3#设置单元格背景颜色pattern_yellow=xlwt.Pattern()#创建 pattern_yellowpattern_yellow.pattern=xlwt.Pattern.SOLID_PATTERN#设置填充模式为全部填充pattern_yellow.pattern_fore_colour=5#设置填充颜色为yellow 黄色style1.pattern=pattern_yellow#把设置的pattern 应用到 style3 上pattern_red=xlwt.Pattern()#创建 pattern_redpattern_red.pattern=xlwt.Pattern.SOLID_PATTERN#设置填充模式为全部填充pattern_red.pattern_fore_colour=2#设置填充颜色为red 红色style2.pattern=pattern_red#把设置的pattern 应用到 style4 上#设置单元格边框borders=xlwt.Borders()#创建 bordersborders.left=xlwt.Borders.DASHED#设置左边框的类型为虚线May be:NO_LINE,THIN,MEDIUM,DASHED,DOTTED,THICK,DOUBLE,HAIR,MEDIUM_DASHED,THIN_DASH_DOTTED,MEDIUM_DASH_DOTTED,THIN_DASH_DOT_DOTTED,MEDIUM_DASH_DOT_DOTTED,SLANTED_MEDIUM_DASH_DOTTED,or 0 x00 through0 x0D.borders.right=xlwt.Borders.THIN#设置右边框的类型为细线borders.top=xlwt.Borders.DOTTED#设置上边框的类型为打点的borders.bottom=xlwt.Borders.THICK#设置底部边框类型为粗线borders.left_colour=0 x10#设置左边框线条颜色borders.right_colour=0 x20borders.top_colour=0 x30borders.bottom_colour=0 x40style1.borders=borders#将 borders 应用到 style1 上style2.borders=borders#将 borders 应用到 style2 上sheet.write(3,0,HuZhangdong,style1)#在第 4 行第 1 列写入 HuZhangdong,格式引用style1sheet.write(4,0,YinMengran,style2)#在第 5 行第 1 列写入 YinMengran,格式引用style2data.save(ue:3.xls)#保存到e:3.xls函数 xlwt.Workbook()只能新建一个excel 文档,不能打开一个已经存在的文档,下一章会讲解如何通过xlutils 修改一个已经存在的excel 文档。8xlutils 简单使用方法本章将讲解如何使用xlutils 编辑一个已经存在的文档,需要导入xlutils 模块,下载地址是 http:/www.python-excel.org/,模块成功安装后就开始编写脚本吧。#-*-coding:utf-8-*-#设置当前编码格式为utf-8import xlwt#导入 xlwt 模块import xlrd#导入 xlrd 模块from xlutils.copy import copy#导入 import 模块的 copy 函数,接下来就可以直接使用函数 copy 了。fileName=E:4.xlssheetName=sheet1styleBoldRed=xlwt.easyxf(font:color-index red,bold on)#设置字体,颜色为红色,加粗oldWb=xlrd.open_workbook(fileName,formatting_info=True)#使用 xlrd.open_workbook 函数打开文件,formatting_info=True表示保留该文件的格式newWb=copy(oldWb)#通过 copy 函数把 oldWb copy 到 newWb,然后通过编辑newWb来实现编辑已经存在的文件。newWs=newWb.get_sheet(0)#读取第一个sheetnewWs.write(4,0,value1,styleBoldRed)#第 5 行第 1 列写入值“value1”,格式采用styleBoldRed。newWs.write(4,1,value2,styleBoldRed)#第 5 行第 2 列写入值“value2”newWs.write(4,2,value3,styleBoldRed)#第 5 行第 3 列写入值“value3”newWb.save(fileName)#文件保存为 E:4.xls

    注意事项

    本文(Python对Excel操作详解-.pdf)为本站会员(索****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开