Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别:
用xlrd和xlwt进行excel读写;
用openpyxl进行excel读写;
import xlrd
from xlutils.copy import copy
import xlwt #打开表格
book = xlrd.open_workbook('木牛流马测评一期.xlsx')
#获取表单名
booknames=book.sheet_names()
#打开表单,,有以下两种方式:通过表单索引或表单名
mySheet = book.sheets()[0]#通过索引打开,该句表示打开第一个表单
mySheet = book.sheet_by_index(0) #通过索引打开,该句表示打开第一个表单,和上面一个语句功能一致
mySheet = book.sheet_by_name(booknames[0]) #通过表单名打开,该句表示打开第一个表单
#读取表单行数和列数
nrows = mySheet.nrows #表格总行数
ncols = mySheet.ncols #表格总列数
#获取一行和一列的数据
row3_values = mySheet.row_values(2) #第3行值
col3_values = mySheet.col_values(2)#第3列值
#读取单元格数据,有以下两种方式
myCellValue = mySheet.cell(3, 3).value #获取单元格,3是行数,3是列数,行数和列数都是从0开始计数;然后通过单元格获取单元格数据。
myCellValue = mySheet.cell_value(3, 3) #直接获取单元格数据,3是行数,3是列数,行数和列数都是从0开始计数。 #用xlrd写入数据
# 这种方法少量数据简单,数据多的话就要用xlwt了
copy_workbook = copy(book) #建立写入的副本
wb = copy_workbook.get_sheet(0) #利用索引值打开写入的表单
wb.write(1,1,'你好') #在(1,1)单元格里写入对应的值'你好'
copy_workbook.save('test.xls') #保存文件 #用xlwt写入数据
# 程序运行后,新建excelwrite.xls工作簿并插入test工作表,A1的内容为A1data。
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('test')
worksheet.write(0,0,'A1data')
workbook.save('excelwrite.xls')
import openpyxl # 用openpyxl读取数据 # 打开工作簿
workbook = openpyxl.load_workbook('new.xlsx')#木牛流马测评一期
#获取表单名
sheet_names = workbook.get_sheet_names()
# 通过表单名获取表单,有以下两种方式
worksheet = workbook.get_sheet_by_name('工作表1')
worksheet = workbook['工作表1']
#获取一行和一列的数据
row3=[item.value for item in list(worksheet.rows)[2]] #第3行值
col3=[item.value for item in list(worksheet.columns)[2]]#第3列值
#读取单元格数据
cell_2_3=worksheet.cell(row=2,column=3).value #第2行第3列值
#读取表单行数和列数
max_row=worksheet.max_row#获取行数
max_col=worksheet.max_column#获取列数 # 用openpyxl写入数据 # 新建new.xls工作簿并插入sheet工作表,A1的内容为99
workbook = openpyxl.Workbook()
# 创建表单
# 一个workbook至少创建一个worksheet,通过active()得到worksheet
sheet = workbook.active #位置默认0,表单名默认sheet
# 也可以通过create_sheet()方法创建worksheets,创建的sheet名称会自动创建,按照sheet,sheet1,sheet2自动增长,通过title属性可以修改其名称。
ws = workbook.create_sheet("Mysheet1") #位置默认插入到最后,表单名可以自定义,该表单名为“Mysheet1”"Mysheet1"
ws = workbook.create_sheet("Mysheet2", 0) #插入到最开始的位置,该表单名为“Mysheet2”
# 通过title属性可以修改表单名称
ws.title = "New Title"
#设定单元格的值,三种方式
ws.cell(row=1,column=1).value=99
ws.cell(row=1,column=1,value=99)
ws['A1'] = '' #write
workbook.save('new.xlsx')
Python|读、写Excel文件(三种模块三种方式)的更多相关文章
- 使用Python xlwt写excel文件
如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...
- Python小实验——读&写Excel文件内容
安装xlrd模块和xlwt模块 读取Excel文件了内容需要额外的模块-- \(xlrd\),在官网上可以找到下载:https://pypi.python.org/pypi/xlrd#download ...
- openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库
openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库¶ https://www.osgeo.cn/openpyxl/index.html
- Pandas 基础(4) - 读/写 Excel 和 CSV 文件
这一节将分别介绍读/写 Excel 和 CSV 文件的各种方式: - 读入 CSV 文件 首先是准备一个 csv 文件, 这里我用的是 stock_data.csv, 文件我已上传, 大家可以直接下载 ...
- python读写Excel文件--使用xlrd模块读取,xlwt模块写入
一.安装xlrd模块和xlwt模块 1. 下载xlrd模块和xlwt模块 到python官网http://pypi.python.org/pypi/xlrd下载模块.下载的文件例如:xlrd-0.9. ...
- xlwt:python的写excel模块
最近工作时碰到了将数据导出,生成一个excel表,对其中的部分数据进行统计,并给其中部分符合条件的数据添加对应的背景颜色的功能需求,于是乎,对Python中写excel的模块xlwt研究了一下,在工作 ...
- Python3 读、写Excel文件
首先,简单介绍一下EXECL中工作簿和工作表的区别: 工作簿的英文是BOOK(WORKBOOK),工作表的英文是SHEET(WORKSHEET). 一个工作簿就是一个独立的文件 一个工作簿里面可以有1 ...
- Python使用读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...
- python批量处理excel文件数据
https://www.zhihu.com/question/39299070?sort=created 作者:水中柳影链接:https://www.zhihu.com/question/392990 ...
- python下读取excel文件
项目中要用到这个,所以记录一下. python下读取excel文件方法多种,用的是普通的xlrd插件,因为它各种版本的excel文件都可读. 首先在https://pypi.python.org/py ...
随机推荐
- 看了Google编码规范,我突然有个感觉
那么个编码规范,充分体现了西方人的自我感觉良好,以及以自己为中心的程度, 以及西方人对待事物的双重标准.
- mongo之$rename更新一个字段的名称(可批量)
$rename操作逻辑执行$unset 老名称和新的名称,然后执行 $set新名称运行.因此,操作可能不保留文档中字段的顺序; 即重命名的字段可以在文档内移动. 1.重命名字段:一级字段 格式: db ...
- Spring,SpringMVC,SpringBoot,SpringCloud有什么区别和联系?
简单介绍 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架.Spring使你能够编写更干净.更可管理.并且更易于测试的代码. Spring MVC是Spring的一个模块,一 ...
- c++ exit() 函数
函数用法 编辑 函数名: exit() 所在头文件:stdlib.h(如果是”VC6.0“的话头文件为:windows.h) 功 能: 关闭所有文件,终止正在执行的进程. exit(0)表示正常退出, ...
- Apache 环境变量配置
在path 中加入 C:\__S_D_K__\AndroidApache\apache-ant-1.9.14\bin 我的路径在C盘
- tesserocr与pytesseract模块的使用
1.tesserocr的使用 #从文件识别图像字符 In [7]: tesserocr.file_to_text('image.png') Out[7]: 'Python3WebSpider\n\n' ...
- 几道51nod上据说是提高组难度的dp题
1409 加强版贪吃蛇 听着懵逼做着傻逼. 每个格子只能经过一次,穿过上下界答案清0,不考虑穿的话就随便dp.如果要穿就是从尽可能上面的位置穿过上界,尽可能下面的位置穿过下界. 那么转移这一列之前找一 ...
- (转)JAVA国际化
转:http://www.cnblogs.com/jjtech/archive/2011/02/14/1954291.html 国际化英文单词为:Internationalization,又称I18N ...
- ionic-CSS:ionic 表单和输入框
ylbtech-ionic-CSS:ionic 表单和输入框 1.返回顶部 1. ionic 表单和输入框 list 类同样可以用于 input 元素.item-input 和 item 类指定了文本 ...
- Hadoop2.X主要模块默认端口及作用
Hadoop集群的各部分一般都会使用到多个端口,有些是daemon之间进行交互之用,有些是用于RPC访问以及HTTP访问.而随着Hadoop周边组件的增多,完全记不住哪个端口对应哪个应用,特收集记录如 ...