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格式无法复用,为了方便用户,写入的话, ...
随机推荐
- 依赖注入【转自知乎 PHP】
第一章:小明和他的手机 从前有个人叫小明 小明有三大爱好,抽烟,喝酒…… 咳咳,不好意思,走错片场了.应该是逛知乎.玩王者农药和抢微信红包 <img src="https://pic1 ...
- MQTT Android端对比
根据收集到的信息,MQTT的Android端项目有这些 后面打算分别研究下
- bzoj4974: [Lydsy1708月赛]字符串大师
脑洞题...玄学 假如是a[i]!=i,说明构成了循环节长为a[i]的循环,那就去%一下(别想多)看一下是循环节中的第几个咯. 否则新填的这个不能和前面构成任何循环,那就不停往前跳去把不能填的标记一下 ...
- hihocoder1699
链接:http://hihocoder.com/problemset/problem/1699 快毕业了的菜菜,做了个比赛,遇到四维偏序,调成了傻逼,所以记录下,看了下以前的傻逼代码,发现自己的cdq ...
- [Codeforces 639B] Bear and Forgotten Tree 3
[题目链接] https://codeforces.com/problemset/problem/639/B [算法] 当d > n - 1或h > n - 1时 , 无解 当2h < ...
- 洛谷 P2585 [ ZJOI 2006 ] 三色二叉树 —— 树形DP
题目:https://www.luogu.org/problemnew/show/P2585 首先,三色其实记录两种状态:是绿色,不是绿色 即可,因为红蓝可以随意取反: 一开始因为懒得还原出树,所以写 ...
- ubuntu16.04 查看系统可用内存
free -m 查看内存情况 (单位MB) mem 行显示了从系统角度看来内存使用的情况, total是系统可用的内存大小, 数量上等于系统物理内存减去内核保留的内存. buffers和cach ...
- 百度上传组件 WebUploader
WebUploader http://fex.baidu.com/webuploader/doc/index.html WebUploader API 文档详细解读 源码以及示例:https://gi ...
- 运行Tomcat 遇到的问题以及解决总结
本文持续更新…… 情况一:在eclipse中启动tomcat提示 1. Server Tomcat v8.5 Server at localhost failed to start . 解决方案 方法 ...
- C#常量知识整理
整数常量 整数常量可以是十进制.八进制或十六进制的常量.前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制. 整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U ...