python操作excel使用xlrd、xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的。这几个模块可以使用pip安装,

也可以下载安装包,进入包内,用python命令安装:python setup.py install

  • pip install xlrd
  • pip install xlwt
  • pip install xlutils

具体使用方法如下:

一、xlrd模块,xlrd模块用来读excel,具体用法如下:

 import xlrd

 wb = xlrd.open_workbook("stu.xlsx") # 打开一个excel表,打开的这个excel必须存在,否则会报错
print(wb.sheet_names()) # 获取所有sheet页的名字
print(wb.sheet_names()[1]) # 根据下标获取sheet页的名字
sheet = wb.sheet_by_index(0) # 根据sheet页的索引获取sheet页
sheet1 = wb.sheet_by_name('stu') # 根据sheet页的名称获取sheet页
print(sheet.nrows) #获取sheet页的行数
print(sheet.ncols) #获取sheet页的列数
print(sheet.row_values(3))#根据sheet名称获取整行的值
print(sheet.col_values(2)) #根据sheet名称获取整列的值
print(sheet.cell(1,0).value.encode('utf-8')) #获取指定单元格的内容
print(sheet.cell(1,0).ctype) # 获取单元格内容的数据类型 #打印每行的信息
for rownum in range(sheet.nrows): # 循环取每行的数据
print(sheet.row_values(rownum)) # 取每行的数据
#按照索引打印对应单元格内容
cell_A2 = sheet.cell(0,1).value #获取指定单元格的值,第一个值是列,第二个值是行
print(cell_A2)

二、xlwt模块,xlwt模块用来读excel,具体用法如下:

 import xlwt

 book = xlwt.Workbook() # 新建一个excel对象
sheet = book.add_sheet('sheet1') # 添加一个指定名称的sheet页
# sheet.write('row','col','value') # 值写入单元格
stus = [
['id', 'name', 'sex', 'age', 'addr', 'grade', 'phone', 'gold'],
[314, '矿泉水', '男', 18, '北京市昌平区', '摩羯座', '', 14405],
[315, '矿泉水', '女', 27, '上海', '摩羯座', '', 100],
[5985, '矿泉水', '男', 18, '北京市昌平区', '班级', '', 100]
]
def save_stu(stus):
for row,stu in enumerate(stus):
for col,field in enumerate(stu):
sheet.write(row,col,field)
book.save('students.xls') save_stu(stus)

09 python学习笔记-操作excel(九)的更多相关文章

  1. python学习笔记(excel简单操作)

    现在的目标是设计一个接口自动化测试框架 用例写在excel里面 利用python自带的pyunit构建 之前已经安装好了处理excel的模块 这次简单的使用下 提前创建好excel文件 “testca ...

  2. python学习笔记(excel+requests)

    已经可以对excel简单的操作后 可以开始通过excel写测试用例 读取用例 执行用例 提前写好execl 如图: 下面是代码: #!/usr/bin/env python # -*- coding: ...

  3. Python学习笔记第十九周

    目录: 一.路由系统URL 1.Django请求生命周期 2.创建Django project 3.配置 4.编写程序 二.视图 三.模板 四.ORM操作 内容: 一.URL 1.Django请求生命 ...

  4. python学习笔记(十九)发送邮件

    在python开发项目或者做自动化测试时候,在测试完成后需要将测试结果总结后进行上报,那么我们就可以通过发送邮件来完成这项工作. 下面我们来看看python中怎么发送邮件的,python中发送邮件可以 ...

  5. python学习笔记(excel+unittest)

    准备先利用之前整理的python自带的unittest框架 整合excel 实现接口自动化测试功能 先看看excel表格设置: 下来是对excel获取的代码: #!/usr/bin/env pytho ...

  6. python学习笔记 操作文件和目录

    如果我们要操作文件.目录,可以在命令行下面输入操作系统提供的各种命令来完成.比如dir.cp等命令. 如果要在Python程序中执行这些目录和文件的操作怎么办?其实操作系统提供的命令只是简单地调用了操 ...

  7. 10 python学习笔记-操作数据库(十)

    在功能.接口测试中,常常需要通过数据库的操作,来准备数据.检测环境及核对功能.接口的数据库操作是否正确. 在自动化测试中,就需要我们用代码连接数据库自动完成数据准备. 环境检查及数据库断言的功能.数据 ...

  8. python学习笔记:(九)循环(for和while)

    在python中循环包括for和while 1.while循环 while 判断条件: statements ----表示:判断条件为真时执行statements,为假不执行 2.for语句 for ...

  9. python学习笔记(excel中处理日期格式)

    涉及到处理excel文件中日期格式数据 这里自己整理下 两种方法 代码如下: @classmethod def get_time(cls, table, nrows): testtime = [] f ...

随机推荐

  1. AMD vs. CommonJS?

    js开发者对js模块加载的尝试和创新从来都没有停止过,尤其是当nodejs的出现后,模块化加载的必要性更加凸显.本文不讨论如何在nodejs环境来模块化加载(创造者已经利用commonJS机制解决), ...

  2. python 数据分析师

    简介 越来越多的政府机关.企事业单位将选择拥有数据分析师资质的专业人士为他们的项目做出科学.合理的分析.以便正确决策:越来越多的风险投资机构把数据分析师所出具的数据分析报告作为其判断项目是否可行及是否 ...

  3. 记一次jmeter从txt文本获取数值并给测试计划的变量赋值,jmeter永久性修改变量。

    前言: 需要永久性的改变变量. 其实这个办法并不是最好的,但是是最容易实现的.后期可做成从数据库里直接取值. 赋值BeanShell import java.io.File; import java. ...

  4. JavaScipt第四天笔记

    JS笔记 1.以后遇到用构造函数创建对象就用NEW 2.用构造函数创建对象语法: var obj1 = new Object();//创建一个空对象 var obj2 = new Object({ n ...

  5. Linux 删除命令rm

    Linux rm命令用于删除一个文件或者目录. 语法:rm [options] name... 参数: 1.-i 删除前逐一询问确认. 2.-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认. 3 ...

  6. Java 基本数据类型极限值

    public static void main(String[] args){ System.out.println("Integer.MIN_VALUE = " + Intege ...

  7. eShopOnContainers学习系列(一):Swagger的使用

    最近在看eShopOnContainer项目,抽取一下其中的基础知识点,做个记录,有兴趣的可以看下. 新建一个.net core API项目,添加Nuget包 Swashbuckle.AspNetCo ...

  8. 编程小技巧之 Linux 文本处理命令

    合格的程序员都善于使用工具,正所谓君子性非异也,善假于物也.合理的利用 Linux 的命令行工具,可以提高我们的工作效率. 本文简单的介绍三个能使用 Linux 文本处理命令的场景,给大家开阔一下思路 ...

  9. 设计一个A表数据抽取到B表的抽取过程

    原题如下: 解题代码如下: table1类: @Data @NoArgsConstructor @AllArgsConstructor public class table1{ private Str ...

  10. Redis持久化的方式有哪些?优缺点分别是什么?

    Redis持久化方式        持久化的目的主要是做灾难恢复,数据恢复.由于Redis的数据全都放在内存里面,如果Redis挂了,没有配置持久化的话,重启的时候数据会全部丢失.         突 ...