Python 操作excel day5
一、Python操作excel
python操作excel使用xlrd、xlwt和xlutils模块
1、xlrd模块是读取excel的;
2、xlwt模块是写excel的;
3、xlutils是用来修改excel的;
二、前置条件:
使用pip install安装各模块
pip install xlrd
pip install xlwt
pip install xlutils
三、xlrd模块,xlrd模块用来读excel,具体用法如下:
import xlrd
#此模块只能读不能写
book = xlrd.open_workbook(r'/Users/smh/Desktop/名单.xlsx')
sheet1 = book.sheet_by_index(0)#用下标取sheet
sheet2 = book.sheet_by_name('作业')#用名字取sheet
print('第一行内容',sheet2.row_values(0))#row_values()取某一行的数据
print('第一列内容',sheet2.col_values(0))#col_values()取某一列的数据
print('第二行第一列内容',sheet2.cell(1,0).value)#取指定单元格的内容
print('一共有%s行'%sheet2.nrows)#多少行
print('一共有%s列'%sheet2.ncols)#多少列
四、xlwt模块,xlwt模块用来写excel,写一个新的excel
import xlwt
#将列表list1写入到excel中
book = xlwt.Workbook() list1=[
[1,'xiaohei','beijing','','女'],
[2,'xiaobai','shanghai','','男'],
[3,'xiaolan','chengdu','','女'],
] a= list1[0]
len(a)#每一个列的元素长度
len(list1)#列表长度
#第一种方法:
sheet = book.add_sheet('no.1 sheet') for i in range(len(list1)):
for j in range(len(list1[0])):
print(list1[i][j])
sheet.write(i,j,list1[i][j]) book.save(r'/Users/smh/Desktop/test1.xlsx')
#第二种方法:(从第二行开始写入)
row = 1 #行号 for row_data in list1:
col = 0
for col_data in row_data:
sheet.write(row,col,col_data)
col += 1#写完一列,列号加1
row += 1#写完一行,行号加1 book.save('test2.xls') #第三种方法,使用枚举函数:(从第二行开始写入)
for row,row_data in enumerate(list1,1):
for col,col_data in enumerate(row_data):
sheet.write(row,col,col_data)
book.save('test3.xls')
五、xlutils模块,xlutils模块用来修改excel的内容,不能直接修改原来的excel内容,必须得先复制一个新的excel,然后对这个新的excel进行修改,用法如下:
import xlrd
from xlutils import copy #与import xlutils的区别:调用xlutils里的方法则不需要xlutils.copy.copy()方法,直接调用copy.copy()
#from xlutils.copy import copy 调用直接copy()
#1、打开一个excel
#2、复制一份
#3、修改 book = xlrd.open_workbook('test2.xls')
new_book = copy.copy(book)#复制一份 #print(dir(new_book))
sheet = new_book.get_sheet(0)#获取sheet页
title = ['编号','名字','地址','电话','性别']
for col,t in enumerate(title):
sheet.write(0,col,t)
new_book.save('test2.xls')
Python 操作excel day5的更多相关文章
- python操作excel表格(xlrd/xlwt)
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
- Python操作Excel
一.系统性学习 对于操作Excel,需要Xlrd/xlwt这两个模块,下面推荐出系统性学习的网址: python操作Excel读写--使用xlrd 官方文档 Python 使用 Xlrd/xlwt 操 ...
- Python操作excel(xlrd和xlwt)
Python操作excel表格有很多支持的库,例如:xlrd.xlwt.openpyxl.win32com,下面介绍使用xlrd.xlwt和xlutils模块这三个库不需要其他的支持,在任何操作系统上 ...
- Python操作excel表格
用Python操作Excel在工作中还是挺常用的,因为毕竟不懂Excel是一个用户庞大的数据管理软件 注:本篇代码在Python3环境下运行 首先导入两个模块xlrd和xlwt,xlrd用来读取Exc ...
- Python 利用Python操作excel表格之openyxl介绍Part2
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart() ...
- Python 利用Python操作excel表格之openyxl介绍Part1
利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...
- 【转】python操作excel表格(xlrd/xlwt)
[转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...
- Python 利用Python操作excel表格之xlwt介绍
利用Python操作excel表格之xlwt介绍 by:授客 QQ:1033553122 直接上代码 案例1 #!/usr/bin/env python # -*- coding:utf-8 ...
- Python 操作Excel之通过xlutils实现在保留原格式的情况下追加写入数据
在Python操作Excel 的模块有 xlrd.xlwt.xlutils等. xlrd:读取Excel文件数据 xlwt:写入Excel 数据,缺点是Excel格式无法复用,为了方便用户,写入的话, ...
随机推荐
- opencv基础笔记(1)
为了细致掌握程明明CVPR 2014 oral文章:BING: Binarized Normed Gradients for Objectness Estimation at 300fps的代码,的好 ...
- 第一章:Android系统介绍android虚拟机
学习android,我们是要了解他的历史的,这里我也就不在累述什么大家都知道的东东了,简单的介绍下内部的相关内容: 1:android虚拟机 我们学习java知道java用的是JVM虚拟机,而开发An ...
- Android 4.4.2 动态加入JNI库方法记录 (一 JNI库层)
欢迎转载,务必注明出处.http://blog.csdn.net/wang_shuai_ww/article/details/44456755 本篇是继<s5p4418 Android 4.4. ...
- 【OI】单调队列
所谓单调队列,就是一个保持着某种性质的队列,通常是队列从队头到队尾,维护一种递增递减的关系. 这种队列通常用来解决一些连续区间的最值问题. 这种队列的入队要保证符合当前的性质,例如一个递增的单调序列( ...
- 一起talk C栗子吧(第九十回:C语言实例--使用管道进行进程间通信三)
各位看官们,大家好,上一回中咱们说的是使用管道进行进程间通信的样例.这一回咱们说的样例是:使用管道进行进程间通信.只是使用管道的方式不同样.闲话休提,言归正转.让我们一起talk C栗子吧! 我们在前 ...
- html鼠标事件
jsp鼠标事件汇总 onclick 单击时触发的事件,这个比较常用 ondblclick 双击时触发的事件 onmoucedown 鼠标按下时触发的事件(个人觉得与onclick异曲同工) onmou ...
- JPG文件格式
开始:0xFF 0xD8 结束:0xFF 0xD9 文件的宽高:0xFF 0xC0 之后隔二个字节(0x11 0x08 这二个字节一般是固定的.描述这个块的长度.) 然后用四个字节来存储图片的高和宽0 ...
- openstack horizon 学习(1) 总览
关于Horizon的设计理念: 来自官网(http://docs.openstack.org/developer/horizon/intro.html): Horizon holds several ...
- linux CentOS中创建用户 无密码登录
首先点击左上角的 “应用程序” -> “系统工具” -> “终端”,首先在终端中输入 su ,按回车,输入 root 密码以 root 用户登录,接着执行命令创建新用户 hadoop: 接 ...
- 【174】C#添加非默认字体
参考:C# WinForm程序安装字体或直接调用非注册字体 参考:百度知道 在Debug文件夹下面新建一个font的文件夹,然后将字体的文件复制到里面,使用的时候,直接调用字体文件! private ...