python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别:

用xlrd和xlwt进行excel读写;

用openpyxl进行excel读写;

用pandas进行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文件(三种模块三种方式)的更多相关文章

  1. 使用Python xlwt写excel文件

    如果需要使用Python写Excel文件,首先下载或者安装xlwt. pip install xlwt 下面的这些demo应该可以帮助开发者快速上手使用xlwt写Excel文件: 创建工作簿(work ...

  2. Python小实验——读&写Excel文件内容

    安装xlrd模块和xlwt模块 读取Excel文件了内容需要额外的模块-- \(xlrd\),在官网上可以找到下载:https://pypi.python.org/pypi/xlrd#download ...

  3. openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库

    openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库¶ https://www.osgeo.cn/openpyxl/index.html

  4. Pandas 基础(4) - 读/写 Excel 和 CSV 文件

    这一节将分别介绍读/写 Excel 和 CSV 文件的各种方式: - 读入 CSV 文件 首先是准备一个 csv 文件, 这里我用的是 stock_data.csv, 文件我已上传, 大家可以直接下载 ...

  5. python读写Excel文件--使用xlrd模块读取,xlwt模块写入

    一.安装xlrd模块和xlwt模块 1. 下载xlrd模块和xlwt模块 到python官网http://pypi.python.org/pypi/xlrd下载模块.下载的文件例如:xlrd-0.9. ...

  6. xlwt:python的写excel模块

    最近工作时碰到了将数据导出,生成一个excel表,对其中的部分数据进行统计,并给其中部分符合条件的数据添加对应的背景颜色的功能需求,于是乎,对Python中写excel的模块xlwt研究了一下,在工作 ...

  7. Python3 读、写Excel文件

    首先,简单介绍一下EXECL中工作簿和工作表的区别: 工作簿的英文是BOOK(WORKBOOK),工作表的英文是SHEET(WORKSHEET). 一个工作簿就是一个独立的文件 一个工作簿里面可以有1 ...

  8. Python使用读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  9. python批量处理excel文件数据

    https://www.zhihu.com/question/39299070?sort=created 作者:水中柳影链接:https://www.zhihu.com/question/392990 ...

  10. python下读取excel文件

    项目中要用到这个,所以记录一下. python下读取excel文件方法多种,用的是普通的xlrd插件,因为它各种版本的excel文件都可读. 首先在https://pypi.python.org/py ...

随机推荐

  1. mysql中explain详解

    explain语法 有两种用法: 1.EXPLAIN tbl_name    2.EXPLAIN [EXTENDED] SELECT select_options 为了更好的说明它,我们需要建两张表, ...

  2. Hadoop 基础知识

    Hadoop 数据是存储在HDFS, Mapreduce 是一种计算框架,负责计算处理. HDFS上的数据存储默认是本地节点数据一份,同一机架不同节点一份,不同机架不同节点一份.默认是存储3份 HDF ...

  3. 高效IO之Dex加密(三)

    更多Android高级架构进阶视频学习请点击:https://space.bilibili.com/474380680 apk加固原理之dex加密 原理其实不复杂,加固其实就是加密dex文件,防止de ...

  4. SB般的“WE战队”输掉了比赛

    事实再一次证明,对于LOL这种游戏,国服选手是根本就不能有一点期待的, 国服环境太好了,赢了可以吹,输了不能骂,自信心极度膨胀,估计WE俱乐部都没有个心理咨询师, 下岗了还可以再卖卖脸,卖卖饼, 国服 ...

  5. shell脚本实现批量端口扫描

    #!/bin/bash # Telnet Batach readonly TMOUT= ip_prefix="192.168" ip_network_range="80- ...

  6. CentOS7.6下安装MySQL

    注:本教程使用XShell ssh到CentOS服务器,并使用root用户登录,如使用其他普通用户登录,请在命令前加sudo 1).在/usr/local/目录下(看个人情况)新建文件夹mysql用来 ...

  7. shell脚本输出空心等腰三角形

    第一种:(for循环) #!/bin/bash#空心等腰三角形arr=9 #定义金字塔的层数for ((i=1;i<=$arr;i++))do for ((j=1;j<=$(($arr-$ ...

  8. WordTEX

    https://www.andrew.cmu.edu/user/twildenh/wordtex/

  9. 笔记38 Spring Web Flow——订单流程(定义基本流程)

    做一个在线的披萨订购应用 实际上,订购披萨的过程可以很好地定义在一个流程中.我们首先从 构建一个高层次的流程开始,它定义了订购披萨的整体过程.接下 来,我们会将这个流程拆分成子流程,这些子流程在较低的 ...

  10. day05 mysql pymysql的使用 (前端+flask+pymysql的使用) 索引 解释执行 慢日志 分页性能方案

    day05 mysql pymysql   一.pymysql的操作     commit(): 在数据库里增删改的时候,必须要进行提交,否则插入的数据不生效       1.增, 删, 改  #co ...