日常工作中会遇到Excel的读写问题。我们可以使用xlwt 模块将数据写入Excel表格,使用xlrd 模块从Excel读取数据,使用xlutils模块和xlrd模块结合对Excel数据进行修改。下面介绍如何实现使用python对Excel进行读写修改操作。

1、对Excel的写操作:

import xlwt

book = xlwt.Workbook() #新建一个excel

sheet = book.add_sheet('sheet1') #添加一个sheet页

sheet.write(0,0,'姓名') #Excel第一行第一列写入姓名

sheet.write(0,1,'性别') #Excel第一行第二列写入性别

sheet.write(0,2,'年龄') #Excel第一行第三列写入年龄

book.save('stu.xls') #微软的office不能用xlsx结尾的,wps随意

举例:从二维列表中读取数据,写入到excel中。

stus = [

['姓名','年龄','性别','分数'],

['mary', 20, '女', 89.9],

['mary', 20, '女', 89.9],

['mary', 20, '女', 89.9],

['mary', 20, '女', 89.9]]

book = xlwt.Workbook() #新建一个excel

sheet = book.add_sheet('sheet1') #添加一个sheet页

raw = 0#控制行的

for stu in stus:

col = 0 #控制列

for s in stu:

sheet.write(raw,col,s)

col+=1

raw+=1

book.save('kkk.xls')

2、对Excel的读操作

import xlrd

book = xlrd.open_workbook('stu.xls') #打开一个excel

sheet = book.sheet_by_index(0) #根据顺序获取sheet

sheet2 = book.sheet_by_name('sheet1') #根据sheet页名字获取sheet

print(sheet.cell(0,0).value) #指定行和列获取数据

print(sheet.ncols) #获取excel里面有多少列

print(sheet.nrows) #获取excel里面有多少行

sheet.row_values(1)#取第几行的数据

print(sheet.col_values(1)) #取第几列的数据

for i in range(sheet.nrows): # 0 1 2 3 4 5

print(sheet.row_values(i)) #取第几行的数据

3、对Excel修改操作

from xlutils.copy import copy #从xlutils模块导入copy

import xlrd

book1 = xlrd.open_workbook('stu.xls') #得到Excel文件的book对象,实例化对象

book2 = copy(book1) #拷贝一份原来的excel

sheet = book2.get_sheet(0) #获取第几个sheet页

sheet.write(1,3,0) #对拷贝的excel第2行,第4列数据为0

sheet.write(1,0,'小黑') #对拷贝的excel第2行,第1列数据为小黑

book2.save('stu.xls') #保存修改后excel

python学习笔记(十三)-python对Excel进行读写修改操作的更多相关文章

  1. python学习笔记十三 JS,Dom(进阶篇)

    JS介绍 JavaScript 是属于网络的脚本语言!JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用:JavaScript 是因特网上最流 ...

  2. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  3. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  4. python 学习笔记一——Python安装和IDLE使用

    好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...

  5. python学习笔记(python简史)

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...

  6. python学习笔记(1)--python特点

    python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.pytho ...

  7. python学习笔记之——python模块

    1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

  8. Python学习笔记 - day12 - Python操作NoSQL

    NoSQL(非关系型数据库) NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称.用于超大规模数据的存储.(例如 ...

  9. Python学习笔记之Python的enumerate函数

    Python 的 enumerate() 函数就像是一个神秘的黑箱,你无法简单地用一句话来概括这个函数的作用与用法. enumerate() 函数属于非常有用的高级用法,而对于这一点,很多初学者甚至中 ...

随机推荐

  1. Centos7上yum安装mongodb4-2

    vim /etc/yum.repos.d/mongodb-org-4.2.repo [mongodb-org-4.2] name=MongoDB Repository baseurl=https:// ...

  2. C# 如何在编译时将 dll 复制到 bin\Release 目录下

    下面假设 Project 名为 Gamma4RTD,需要调用的 dll 文件为 rtddll.dll.IDE 是 Visual Studio 2015 打开 Visual Studio 2015 -& ...

  3. C#的6种常用集合类

    一.先来说说数组的不足(也可以说集合与数组的区别): 1.数组是固定大小的,不能伸缩.虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的 ...

  4. C++继承体系中的内存分段

    ---------------综述与目录-------------- 讨论这个问题之前我们先明确类的结构,一个类的大概组成,下面的很多分类名词都是我个人杜撰,为的就是让读者看懂能够区分,下面分别分类: ...

  5. windows通过pfx文件生成key、crt文件

    nginx代理的时候,需要填写证书的crt跟rsa文件路径,通过iis导出的证书是pfx文件(不知道nginx能不能直接用pfx文件,没有查看过相关资料),所以要通过pfx文件生成crt.rsa文件. ...

  6. 设置Sublime插件快捷键--实现CSS颜色选取

    安装插件ColorPicker 如果你经常要查看或设置颜色值,这个插件可以很方便地调用你本机的调色板应用.(译者扩充:)这是一个双向的功能,你既可以在调色板中选择一个颜色,然后按"确定&qu ...

  7. ☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(上)

    TestNG介绍 TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便. 详细使用说明请参考官方链接:https://testng ...

  8. opencv入门系列教学(四)处理鼠标事件

    一.鼠标事件的简单演示 opencv中的鼠标事件,值得是任何与鼠标相关的任何事物,例如左键按下,左键按下,左键双击等.我们先来看看鼠标事件有哪些,在python中执行下面代码: import cv2 ...

  9. openstack新建实例各种报错解决

    最近自己装了下Openstack,零基础安装,参照了网上不少教程. 吃了百家饭的后果,就是出现了一堆不明问题...openstack安装比较复杂,很多配置文件,一个地方配置不正确,可能会导致后面的功能 ...

  10. 高德地图——searchNearBy()

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script ty ...