python之操作excel:xlrd、xlwt、xlutiles、枚举函数enumerate()
一、读excel: xlrd-----只能读、不能写
import xlrd
book=xlrd.open_workbook(r'E:\BestTest\内容\名单.xlsx') #打开excel
sheet=book.sheet_by_index(0) #通过索引定位是第一个sheet页
sheet2=book.sheet_by_name("作业") #通过名字定位sheet
sheet.row_values(0) #获取某一行的数据,索引从0开始,0代表第一行 sheet.col_values(1) #获取某一列的数据,索引从0开始 sheet.cell(0,1).value #获取某个单元格的内容,索引从0开始,(行,列),(0,0)代表第1行,第1列 sheet.nrows #获取总行数
sheet.ncols #获取纵列数
二、写入excel:xlwt ——只能新建一个excel,往里面写内容,不是修改
book=xlwt.Workbook()
sheet=book.add_sheet('人员名单')
sheet.write(0,0,'姓名)
sheet.write(0,1,'学习形式')
sheet.write(1,0,'xiaohei') #(行,列,内容)
sheet.write(1,1,'现场')
#写完要保存:
book.save('E:\BestTest\上课内容\student.xls')
# 保存时,如果用的是微软的office,后缀要用.xls
# 如果是wps,就用.xls .xlsx
练习:list中每个元素写进表格中
方法一:
list=[
[1,'han',''],
[2, 'xiaoming', ''],
[3, 'xiaohei2', ''],
[4, '小白', '']
]
row=1 #定义行号,空出表头,从第二行,第一列开始写
for row_data in list:
col=0
for col_data in row_data:
sheet.write(row,col,col_data)
col+=1
row+=1
book.save('test.xls')
方法二:使用枚举函数:enumerate()
for row,row_data in enumerate(list,1) #取list中下标和元素,下标定义初始索引是1
print(row,row_data)
for col,col_data in enumerate(row_data) #不传索引初始值,默认从0开始
print(col,col_data)
sheet.write(row,col,col_data)
book.save('test1.xls')
三、 修改excel
from xlutils import copy
import xlrd #两个模块配合才能修改
#操作步骤:
#1打开一个excel
#2复制一份
#3修改
book=xlrd.open_workbook('test.xls') #可写绝对路径
new_book=copy.copy(book)
print(dir(new_book)) #查看new_book可做的操作
sheet=new_book.get_sheet(0) #定位sheet页,xlutils中的定位sheet的方法不同于xlrd
title=['id','name','phone']
for col,t in enumerate(title):
sheet.write(0,col,t)
new_book.save('test.xls') #运行是文件不能是打开的状态,否则会报错
四、枚举函数:enumerate(list)
list=['xiaomingn','xiaohei','xiaobai']
num=1
for i in list:
print("编号:%s-->%s"%(num,i))
num+=1
#同下:
#enumerate(list):循环时,同时循环下标和元素 enumerate(list,1) #可指定从几开始,1,2,3,……如果不指定是默认从零开始,0,1,2,……
for count,value in enumerate(list,1) print("编号:%s-->%s"%(count,value))
python之操作excel:xlrd、xlwt、xlutiles、枚举函数enumerate()的更多相关文章
- 【python】操作excel——xlrd xlwt xlutils
from xlutils.copy import copy import xlrd # import xlutils #打开已存在的excel rb=xlrd.open_workbook('D:\\1 ...
- xpython操作excel之xlwt与xlrd
xlwt与xlrd只能针对xls格式的excel进行操作!!!(openpyxl操作excel) xlwt写excel # pip install xlwt下载导入xlwt写xls格式的excel操作 ...
- Python读写操作Excel模块_xlrd_xlwt_xlutils
Python 读写操作Excel -- 安装第三方库(xlrd.xlwt.xlutils.openpyxl) 如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行 ...
- Python“文件操作”Excel篇(上)
大家好,我们今天来一起探索一下用Python怎么操作Excel文件.与word文件的操作库python-docx类似,Python也有专门的库为Excel文件的操作提供支持,这些库包括xlrd.xlw ...
- Python Pandas操作Excel
Python Pandas操作Excel 前情提要 ☟ 本章使用的 Python3.6 Pandas==0.25.3 项目中需要用到excel的文件字段太多 考虑到后续字段命名的变动以及中文/英文/日 ...
- 使用Python对Excel表格进行简单的读写操作(xlrd/xlwt)
算是一个小技巧吧,只是进行一些简单的读写操作.让人不爽的是xlrd和xlwt是相对独立的,两个模块的对象不能通用,读写无法连贯操作,只能单独读.单独写,尚不知道如何解决. #①xlrd(读) #cod ...
- Python 读写操作Excel —— 安装第三方库(xlrd、xlwt、xlutils、openpyxl)
数据处理是 Python 的一大应用场景,而 Excel 则是最流行的数据处理软件.因此用 Python 进行数据相关的工作时,难免要和 Excel 打交道. 如果仅仅是要以表单形式保存数据,可以借助 ...
- python操作excel xlrd和xlwt的使用
最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...
- python 3 操作 excel
看到一篇很好的python读写excel方式的对比文章: 用Python读写Excel文件 关于其他版本的excel,可以通过他提供的链接教程进行学习. XlsxWriter: https://git ...
随机推荐
- javascript的回调函数
函数也是对象 想弄明白回调函数,首先的清楚地明白函数的规则.在javascript中,函数是比较奇怪的,但它确确实实是对象.确切地说,函数是用Function()构造函数创建的Function对象.F ...
- 标准WPS框架下的空间信息处理服务部署方法
笔者第一篇博客里面曾介绍过将专题图制作功能发布为WPS,但随着后面的研究,才发现那时候发布的不是真正WPS框架下的服务,而只是通过Servlet将其发布为可调用的网络服务,所以今天再具体介绍一下真正的 ...
- MySQL与MongoDB的区别
一.MongoDB简介 什么是MongoDB ?MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 旨 ...
- 洛谷P2585 [ZJOI2006]三色二叉树(树形dp)
传送门 设$dp[u][i]$表示点$u$颜色为$i$时最多(最少)的绿点个数(这里用$0$表示绿点) 然后直接用树形dp就可以了 记得把情况讨论清楚 //minamoto #include<b ...
- iOS 设置UITextView的Placeholder
代码如下: - (void)setupTextView { UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(0, ...
- Python入门小练习 003 利用cookielib模拟登录获取账户信息
为了方便, 使用chinaunix的账户获取账户主题. 有些网站可能需要验证码, 找一些不用验证码的网站 下面 ****** 很多个星号的均为私密信息, 所以用星号代替 #!/usr/bin/pyt ...
- php输出中文字符
中文字符不可以使用imagettftext()函数在图片中直接输出,如果要输出中文字符,需要先使用iconv()函数对中文字符进行编码,语法格式如下:string iconv ( string $in ...
- RAID基础
磁盘类型 类型 IDE Integrated Drive Electronics SATA Srial ATA SCSI Small Computer System Interface FC Fibe ...
- java学习第二章
- js去掉数组的空字符串
后台返回数据的时候,有些数据为空时,一般都不进行显示,需要去除空字符串. 基本思路:获取数组张度,遍历数组,当数组某个值等于‘’或null或数据类型为undefined时,根据splice方法去除数据 ...