python怎么读取excel-Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别:
用xlrd和xlwt进行excel读写;
用openpyxl进行excel读写;
用pandas进行excel读写;
为了方便演示,我这里新建了一个data.xlsx文件,第一个工作表sheet1区域"A1:F5”的内容如下,用于测试读excel的代码:
1 利用xlrd和xlwt进行excel读写(xlwt不支持xlsx)
首先是安装第三方模块xlrd和xlwt,直接输入命令"pip install xlrd"和"pip install xlwt"就行,如下(cmd→CD→c:pythonscripts):
1.1 xlrd读excel
import xlrd
book = xlrd.open_workbook('data.xlsx')
sheet1 = book.sheets()[0]
nrows = sheet1.nrows
print('表格总行数',nrows)
ncols = sheet1.ncols
print('表格总列数',ncols)
row3_values = sheet1.row_values(2)
print('第3行值',row3_values)
col3_values = sheet1.col_values(2)
print('第3列值',col3_values)
cell_3_3 = sheet1.cell(2,2).value
print('第3行第3列的单元格的值:',cell_3_3)
运行结果
表格总行数 5
表格总列数 5
第3行值 ['3A', '3B', '3C', '3D', '3F']
第3列值 ['1C', '2C', '3C', '4C', '5C']
第3行第3列的单元格的值: 3C
1.2 xlwt写excel
主要代码如下,很简单:
import xlwt # 貌似不支持excel2007的xlsx格式
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('test')
worksheet.write(0,0,'A1data')
workbook.save('excelwrite.xls')
程序运行后,新建excelwrite.xls工作簿并插入text工作表,A1的内容为A1data。
2 利用openpyxl读写excel,注意这里只能是xlsx类型的excel
安装的话,直接输入命令"pip install openpyxl"就行,很快就能安装完毕。
2.1 读excel
import openpyxl
workbook = openpyxl.load_workbook('data.xlsx')
worksheet = workbook.get_sheet_by_name('Sheet1')
row3=[item.value for item in list(worksheet.rows)[2]]
print('第3行值',row3)
col3=[item.value for item in list(worksheet.columns)[2]]
print('第3行值',col3)
cell_2_3=worksheet.cell(row=2,column=3).value
print('第2行第3列值',cell_2_3)
max_row=worksheet.max_row
print('最大行',max_row)
运行结果:
第3行值 ['3A', '3B', '3C', '3D', '3F']
第3行值 ['1C', '2C', '3C', '4C', '5C']
第2行第3列值 2C
最大行 5
2.2 写excel
主要代码如下:
import openpyxl
workbook = openpyxl.Workbook()
sheet=workbook.active
sheet['A1']='hi,wwu'
workbook.save('new.xlsx')
程序运行后,新建new.xls工作簿并插入sheet工作表,A1的内容为hi,wwu。
3 利用pandas读取excel
Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。
首先要安装pandas模块,相对来说,安装pandas模块要复杂一些。
如果用pip install pandas安装后运行出错,可以考虑安装以前的版本:pip install pandas==0.22
pandas是一个数据处理的包,本身提供了许多读取文件的函数,像read_csv(读取csv文件),read_excel(读取excel文件)等,只需一行代码就能实现文件的读取
3.1 读excel
主要代码如下,就1行代码搞定,注意这里的data是DataFrame类型:
import pandas as pd
df = pd.read_excel(r'data.xlsx',sheetname=0)
print(df.head())
运行结果:
1A 1B 1C 1D 1F
0 2A 2B 2C 2D 2F
1 3A 3B 3C 3D 3F
2 4A 4B 4C 4D 4F
3 5A 5B 5C 5D 5F
3.2 写excel
主要代码如下:
from pandas import DataFrame
data={
'name':['张三','李四','王五'],
'age':[11,12,13]
'sex':'男','女','男']
}
df=DataFrame(data)
df.to_excel('new.xlsx")
程序运行后,将新建(或替换)new.xlsx文件,并在工作表sheet1的A1:D4区域中保存内容如下:
至此,我们就完成了excel的读写。总的来说,这3种方法都很简单,尤其是第3种方法,1行代码就搞定,在数据处理中,经常会用到pandas这个包(该包可以处理众多常见的数据存储格式,如CSV、JSON等),功能很强大,当然还有许多其他的包也可以完成excel的读写
我刚整理了一套2018最新的0基础入门和进阶教程,无私分享,加Python学习q-u-n :二二七,四三五,四五零 即可获取,内附:开发工具和安装包,以及系统学习路线图
python怎么读取excel-Python|读、写Excel文件(三种模块三种方式)相关推荐
- python读文件的三种方式_Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: import xlrd from xlut ...
- python库读取cif文件_Pymatgen读/写各种文件,pymatgen,读写
pymatgen读/写各种文件 pymatgen是材料大数据计算的必备程序包了,其也作为API与materials project对接,可以批量下载自己想要的材料结构.性质,它也提供了大量VASP计算 ...
- pymatgen读/写各种文件
PS:请见文末的打赏选项 pymatgen读/写各种文件 pymatgen是材料大数据计算的必备程序包了,其也作为API与materials project对接,可以批量下载自己想要的材料结构.性质, ...
- python填写excel-Python|读、写Excel文件(三种模块三种方式)
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pandas进行excel读写: 为了方 ...
- 小白用python处理excel文件-Python读、写Excel文件(三种模块三种方式,小白也可学会)...
python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别: 用xlrd和xlwt进行excel读写: 用openpyxl进行excel读写: 用pandas进行excel读写: 为了方 ...
- python pandas读取excel-Python使用Pandas读写EXCEL文件教程
欢迎,来自IP地址为:211.103.135.163 的朋友 教程开始之前,我们需要首先了解一下什么是Excel,这有助于理解之后教程中的内容. 什么是Excel Excel 是微软出品的和款办公软 ...
- python导入excel散点图_Python 写excel文件并插入散点图
这两天做小实验,需要分析结果,当然需要些图表.实验的算例少说也有几十个,一个个导入excel,太烦了.幸好,本人是个程序员. google了下,python写excel文件的方法不少,最后我选定了xl ...
- python怎么读取列表-python读入列表
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 我正在尝试将文本文件的行读入python中的列表或数组. 我只需要能够单 ...
- python批量读取grib_windows python读取grib2数据
一.环境准备 (1).python3环境 (3).wgirb2工具(用于读取grib2文件),下载地址:ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib2 二.环境测试 ...
最新文章
- 15个精心挑选的 jQuery 下拉菜单制作教程
- Java开发必须掌握的5种加密策略
- java 流 存放在哪_java IO流学习
- 不打游戏还整个i7 8700的弊端,完全用不上
- Mysql查询语句练习题
- 令人失望的智器Smart Q5
- 如何快速集成短信验证码API[图文教程]
- win10支持8t 硬盘_详解win10硬盘如何直接安装
- python求不规则图形面积_使用Python生成不规则形状的图形
- 六年级计算机课件,六年级信息技术上册课件.ppt
- intent-filter属性介绍
- S3C2440 SDRAM驱动配置编程
- 【软件教程】如何将夸克网盘挂载为本地磁盘【Docker+AList+RaiDrive】
- 刷题学习—算法思想(双指针、排序、回溯、二分法、滑动窗口、贪心、单调栈)
- 电子商务业务模块分析和介绍以及开发流程
- SIEMENS/西门子1200 总线控制V90伺服程序模板
- 现代控制理论课程学习与镜像实践简要说明(2020-2021-2)
- 浅析Draw Call
- JAVA中的GUI设计
- 小甲鱼第十九课:函数:我的地盘听我的课后总结
热门文章
- LeetCode113. 路径总和 II(DFS)(递归)
- C++设计模式之Template Method(模板方法模式)
- Blog运用感想 (ZT)
- SECS/GEM series: Protocol Layer
- foreach delete item error
- php操作excel表格的导入和导出
- javascript基础知识(13) Date
- jsp+mysql 数据库操作
- POJ2182 HDU2711 Lost Cows【树状数组+线段树】
- Ubuntu中使用VS Code