1. import xlwt #写excel
  2. import xlrd #读excel
  3. import xlutils #修改excel

一、写操作

1、写Excel

  1. import xlwt #写excel,导入模块
  2.  
  3. book = xlwt.Workbook(encoding='utf-8')# 创建一个Workbook对象,这就相当于创建了一个Excel文件
  4. sheet = book.add_sheet('sheet1')#创建一个sheet对象,一个sheet对象对应Excel文件中的一张表格。其中的sheet1是这张表的名字。
  5.  
  6. sheet.write(0,0,'id')# 其中的'0-行, 0-列'指定表中的单元,'id'是向该单元写入的内容
  7. sheet.write(0,1,'username')
  8. sheet.write(0,2,'password')
  9.  
  10. sheet.write(1,0,'')
  11. sheet.write(1,1,'niuhanyang')
  12. sheet.write(1,2,'')
  13.  
  14. book.save(r'e:\test1.xls')# 最后,将以上操作保存到指定的Excel文件中

2、如何写一个表

我们有下面这一张表,怎样写到excle中呢,可以用到二层循环。

  1. stus = [
  2. [1,'njf',''],
  3. [2,'xiaojun',''],
  4. [3,'hailong',''],
  5. [4,'xiaohei',''],
  6. [5,'xiaohei',''],
  7. [6,'xiaohei',''],
  8. [7,'xiaohei',''],
  9. [8,'xiaohei',''],
  10. [9,'xiaohei',''],
  11. ]
  1. line = 0 #定义一个变量,控制的是行,循环一次行加1
  2. for stu in stus:#行 第一层循环
  3. #stu [1,'njf','1234']
  4. col = 0 #控制lie
  5. for s in stu: #第二层循环
  6. sheet.write(line, col, s)
  7. #0 0 1
  8. #0 1 njf
  9. #0 2 1234
  10.  
  11. # 1 0 2
  12. # 1 1 xiaojun
  13. # 1 2 1234
  14.  
  15. col+=1 #控制lie
  16. line+=1
  17.  
  18. book.save('stu.xls')# 保存

二、读操作

  1. import xlrd #读excel,导入模块
  2.  
  3. book = xlrd.open_workbook('stu.xls')#打开XLS文件
  4. sheet = book.sheet_by_index(0)# 方法1,通过sheet索引获得sheet对象
  5. sheet = book.sheet_by_name('sheet1') # 方法2,根据名字获得
  6.  
  7. print(sheet.nrows) #获取总行数
  8. print(sheet.ncols) #获取宗列数
  9. print(sheet.cell(0,0).value) #获取到指定单元格的内容
  10. print(sheet.cell(0,1).value) #获取到指定单元格的内容
  11. print(sheet.row_values(0))# 获得第1行的数据列表
  12. print(sheet.col_values(0))# 获得第1列的数据列表
  13.  
  14. for i in range(sheet.nrows):#循环获取每行的内容
  15. print(sheet.row_values(i))

三、修改操作

  1. from xlutils import copy #导入模块
  2.  
  3. book = xlrd.open_workbook('stu.xls')#先用xlrd打开一个Excel
  4. new_book = copy.copy(book)#然后用xlutils里面的copy功能,复制一个Excel
  5. sheet = new_book.get_sheet(0)#获取sheet页,第1张表
  6. sheet.write(0,1,'倪菊芳')#修改指定内容
  7. sheet.write(1,1,'白小军')
  8. new_book.save('stu.xls')#保存

python学习笔记:操作Excle的更多相关文章

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

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

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

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

  3. 09 python学习笔记-操作excel(九)

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

  4. Python学习笔记----操作字符串

    1.字符串相加.列表相加.列表和字符串不能混着使用 #序列相加 a="hello" b="python" c=a+b print("字符串相加的结果& ...

  5. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  6. Python学习笔记(15)- os\os.path 操作文件

    程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...

  7. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  8. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  9. python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹

    python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...

  10. Python学习笔记进阶篇——总览

    Python学习笔记——进阶篇[第八周]———进程.线程.协程篇(Socket编程进阶&多线程.多进程) Python学习笔记——进阶篇[第八周]———进程.线程.协程篇(异常处理) Pyth ...

随机推荐

  1. 安装第三方包&查看python版本/第三方包版本

    安装第三方包时,经常需要查看python版本,以及是否安装第三方包及版本,每次都要百度下指令. 故小编整理了下安装/卸载第三方包,查看python/第三包的指令,具体如下: 一.python安装/卸载 ...

  2. QTP 保留对象

    1. 常用保留对象(Utility Objects) 保留对象:所谓QTP保留对象就是QTP本身预留的一些可用对象. 通俗些讲就是,当打开QTP时它就已经把这些对象给实例化了,直到关闭QTP后,这些保 ...

  3. Cocos2d Box2D之碰撞检测

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 在Box2D中碰撞事件由b2ContactListener类函数实现,b2ContactListener是Box2D提供的抽象类,它的抽象 ...

  4. 安装Consul服务中心

    安装Consul服务中心 首先下载对应版本的安装程序.点击下载 我下载的是macOS64位版本,下载文件是一个ZIP文件,下载后解压缩到一个你喜欢的位置,以开发模式启动consul服务: #进入con ...

  5. IPv6 关于路由器配置静态IPv6路由的命令

    今天在学习路由器配置ipv6 的时候遇到了一点疑惑 一条命令为:ipv6 route FE80:0202::/32 serail 0/1 201 一条命令为:ipv6 route FE80:0202: ...

  6. 团队作业Bata冲刺-第二天

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2 这个作业要求在哪里 https://edu.cnblo ...

  7. Retrofit总结(原)

    1.Retrofit的作用 A type-safe HTTP client for Android and Java 看到这句话时候在想什么是类型安全? 百度一下:类型安全代码指访问被授权可以访问的内 ...

  8. window常见操作

    cmd查看进程命令 nestat -aon|findstr "端口" 杀进程: taskkill /f /pid 端口号  /f参数强制杀进程 通过注册表删除桌面图标 cmd re ...

  9. 【串线篇】浅谈BeanFactory

    BeanFactory&ApplicationContext BeanFactory: bean工厂接口,负责创建bean实例, 容器里保存的所有单例bean其实是一个map<key-- ...

  10. 数据结构---Java---String、StringBuilder、StringBuffer

    1.概述 1.1 String:不可变字符串 public final class String implements java.io.Serializable, Comparable<Stri ...