




免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PythonPython 对对 ExcelExcel 操作详解操作详解 文档摘要 文档摘要 本文档主要介绍如何通过 python 对 office excel 进行读写操作 使用了 xlrd xlwt 和 xlutils 模块 另外还演示了如何通过 Tcl tcom 包对 excel 操作 关键字 关键字 Python Excel xlrd xlwt xlutils TCl tcom 1Python 简介简介 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 了 可以选择安装路径 我改为 C Python2 7 5 了 然后一路 next 就完成安装了 安装完成后在 C 盘下就多了一个文件夹 Python2 7 5 Python 也是一种实时交互语言 可以通过自带的 IDLE 编写 python 语句并反馈回显信息 可以通过图 1 方式调出 python IDLE 图 1 也可以在 cmd 下输入 python 但默认情况下 python 并没有添加 到 windows 环境变量中 导致在 cmd 下输入 python 的时候出现提示 python 不是内部或外部命令 也不是可运行的程序或批处理文 件 windows 下可执行文件在运行时首先在当前目录下搜索 因 为进入 cmd 下默认路径一般为 C Documents and Settings Administrator 而在这个路径下是找不到 python 的 所以提示出错 可以进入到 python 安装目录下 然后执行 python 就可以进入交互命令行模式下 如果懒的每次都进入 python 安装 此时需要将 python 安装路径添加到系统变量中 然后 windows 在执 行命令的时候会去环境变量中查找路径 具体配置如图 2 所示 在 Path 中添加 python 的安装路径 C Python2 7 5 主要路径后 面要加 分号表面这是一个路径的结束 此时无论在哪个路径下 都可以执行 python 调出交互命令行 图 2 3Python 语法入门语法入门 在 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 所示 图 3 Python 很多功能都是靠模块实现的 比如 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 包 package require tcom set filename F 1 xls 创建 com 实例 打开工作表 下面四句都是套路 set excel tcom ref createobject Excel Application set workbooks excel Workbooks set workbook workbooks Open filename set worksheets workbook Worksheets sheet1 为 sheet 的名称 set worksheet worksheets Item sheet1 创建单元格对象 set cells worksheet Cells 给单元格 B2 赋值为 hsdf cells Item 2 B hsdf 获取 sheet 的个数并赋值给 sheetCount set sheetCount worksheets Count 获取 A1 至 A15 单元的范围对象 set range worksheet Range A1 A15 给 A1 至 A15 单元赋值 range Value2 abcdefg 获取 A1 至 A15 的值 并赋值给 A A 是一个列表 list set A range Value2 设置单元的背景色 set interior range Interior interior Color expr 0 x00FFE0 设置单元的前景色和字体大小 加粗 斜体 字体 set font range Font font Color expr 0 xFF0000 font Bold 1 font Size 10 font Italic 0 font Name 华文行楷 设置单元格的宽度为自动调整 set entire range EntireColumn entire AutoFit 保存文档 workbook Save 显示 Excel excel Visible 1 5xlwt 和和 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 5 Lib 下 此时在命令行下输入 import xlrd 或者 import xlwt 会出现提示 ImportError No module named xlwt 这表明还没有安装 xlwt 模块 python 导入一个模块的过程要求有一个叫做 路径搜索 的操 作过程 即是在文件系统 预先设定的区域 查找模块文件以加载 模块的过程 这个预先设定的区域其实是 python 搜索路径的一组目 录 这个目录保存在 sys path 中 如果你想知道 python 导入模块 时会在哪些路径搜索模块 你可以执行以下命令查看搜索路径目录 import sys sys path D python shell 2 7 5 C Python2 7 5 Lib idlelib C Python2 7 5 lib site packages setuptools 1 3 py2 7 egg C Python2 7 5 lib site packages xlutils 1 7 0 py2 7 egg C Windows system32 python27 zip C Pytho n2 7 5 DLLs C Python2 7 5 lib C Python2 7 5 lib plat win C Python2 7 5 lib lib tk C Python2 7 5 C Python2 7 5 lib site packages C Python2 7 5 lib site packages win32 C Python2 7 5 lib site packages win32 lib C Python2 7 5 lib site packages Pythonwin 在 sys path 中找到一个路径为 C Python2 7 5 lib 所以 我们把模块解压缩到这个目录下 命令 sys path append C Python2 7 5 lib 在最后添加一个目录 sys path insert 0 C Python2 7 5 lib 在第一位插入一个 目录 解压缩完成并放在正确目录后 在 cmd 下进入 package 当前目录 然后输入命令 C Python2 7 5 Lib xlrd 0 8 0 python setup py install 安装完成后可以输入 import xlrd dir xlrd 来确认是 否已经安装正确 6xlrd 简单使用方法简单使用方法 import xlrd excel xlrd open workbook C Users HuZhangdong Desktop ASB 测试床 环境信息图 xls 打开文件并将对象存储到 excel 中 sheet excel sheet by index 0 通过索引读取 sheet 对 象 第一个 sheet 的索引为 0 row 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 8 import os xlwt datetime 导入模块 data xlwt Workbook 新建一个 Workbook sheet data add sheet u sheet 新建一个 sheet 名称 为 sheet style1 xlwt XFStyle 创建格式 style1 style2 xlwt XFStyle style3 xlwt XFStyle 设置字体格式 font1 xlwt Font 创建 font1 font1 name Times New Roman 字体为 Times New Roman font1 bold True 加粗 font1 colour index 2 字体颜色为红色 0 Black 1 White 2 Red 3 Green 4 Blue 5 Yellow 6 Magenta 7 Cyan font1 underline xlwt Font UNDERLINE DOUBLE 下划线类 型 UNDERLINE DOUBLE 代表双下划线 另外还有 UNDERLINE NONE UNDERLINE SINGLE UNDERLINE SINGLE ACC UNDERLINE DOUBLE UNDERLINE DOUBLE ACC font1 escapement xlwt Font ESCAPEMENT SUPERSCRIPT 设置上标 font1 family xlwt Font FAMILY ROMAN font1 height 0 x190 0 x190 是 16 进制 换成 10 进制为 400 然后除以 20 就得到字体的大小为 20 style1 font font1 将创建的 font1 字体格式应用到 style1 上 font2 xlwt Font 创建 font2 font2 name Algerian 字体为 Algerian font2 colour index 3 字体颜色为绿色 font2 italic True 斜体 font2 struck out True 删除线 font2 height 0 x258 字体大小为 30 style2 font font2 将创建的 font2 字体格式应用到 style2 上 设置列宽 sheet col 0 width 6000 sheet col 1 width 12000 sheet set col default width 2 设置单元格对齐方式 alignment xlwt Alignment 创建 alignment alignment horz xlwt Alignment HORZ CENTER 设置水平 对齐为居中 May be HORZ GENERAL HORZ LEFT HORZ CENTER HORZ RIGHT HORZ FILLED HORZ JUSTIFIED HORZ CENTER ACROSS SEL HORZ DISTRIBUTED alignment vert xlwt Alignment VERT CENTER 设置垂直 对齐为居中 May be VERT TOP VERT CENTER VERT BOTTOM VERT JUSTIFIED VERT DISTRIBUTED style3 alignment alignment 应用 alignment 到 style3 上 插入时间 style3 num format str YYYY MM DD HH MM SS 设置时 间格式 sheet write 1 1 datetime datetime now style3 在第 2 行第 2 列插入当前时间 格式为 style3 设置单元格背景颜色 pattern yellow xlwt Pattern 创建 pattern yellow pattern yellow pattern xlwt Pattern SOLID PATTERN 设 置填充模式为全部填充 pattern yellow pattern fore colour 5 设置填充颜色 为 yellow 黄色 style1 pattern pattern yellow 把设置的 pattern 应用到 style3 上 pattern red xlwt Pattern 创建 pattern red pattern red pattern xlwt Pattern SOLID PATTERN 设置 填充模式为全部填充 pattern red pattern fore colour 2 设置填充颜色为 red 红色 style2 pattern pattern red 把设置的 pattern 应用到 style4 上 设置单元格边框 borders xlwt Borders 创建 borders borders 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 through 0 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 x20 borders top colour 0 x30 borders bottom colour 0 x40 style1 borders borders 将 borders 应用到 style1 上 style2 borders borders 将 borders 应用到 style2 上 sheet write 3 0 HuZhangdong style1 在第 4 行第 1 列写入 HuZhangdong 格式引用 style1 sheet write 4 0 YinMengran style2 在第 5 行第 1 列写入 YinMengran 格式引用 style2 data save u e 3 xls 保存到 e 3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东华建铝业考试试题及答案
- 科学实验室培训
- 如何构建文明健康绿色环保的生活方式
- 2025年中国男士不可充电头灯行业市场全景分析及前景机遇研判报告
- 自然生命课程中班课件
- 基于化学核心素养的“教、学、评”一体化教学设计
- 客服培训周会汇报
- 成本控制与成本控制效果评估合同
- 绿色能源场地租赁合同转让与环保责任协议
- 智能化彩钢瓦施工与节能改造合同
- 环保相关知识培训课件
- 2025年河北高考真题化学试题+解析(参考版)
- 护理事业十五五发展规划(2026-2030)
- 2025至2030中国中药材种植行业运作模式与竞争格局分析报告
- 武汉大学2020年强基计划物理试题(原卷版)
- 2025年随州国投集团公开招聘42名工作人员笔试参考题库附带答案详解
- 2025年 内蒙古能源集团所属单位招聘考试笔试试题(含答案)
- 夜市经营安全应急预案
- 国开(甘肃)2024年春《地域文化(专)》形考任务1-4终考答案
- 机关公文写作案例分析课件
- 物业公司工程部工作职责.doc
评论
0/150
提交评论