python 操作Excel(2) 读取Excel(利用 Pandas 和 xlrd )

2023-12-31 13:48

本文主要是介绍python 操作Excel(2) 读取Excel(利用 Pandas 和 xlrd ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

pandas简介

pandas 是基于NumPy的一种工具,支持xlsxlsx文件格式。该工具是为了解决数据分析任务而创建的。

Series,在Pandas库中表示一维数组,与Python基本的数据结构List相近,可以保存不同数据类型。

DataFrame,是Pandas库中的一种数据结构,它类似excel,是一种二维表

 

读取excel文件,read_excel ( io) 

# coding:utf-8
# 将实验 excel 文件放入 python 执行文件的顶层目录下,即可实现读取Excel功能。import pandas as pdfileName = input("请输入excel文件\n") # 获取文件路径
df = pd.read_excel(fileName) # df 即 DataFrame 结构
print(df)

一些重要的pandas.read_excel参数如下:

参数     描述         
io一个字符串,描述给定Excel文件的路径。
sheet_name您要导入的数据的Excel工作表名称或工作表编号。 工作表编号可以是整数,其中0是第一张工作表,1是第二张工作表,依此类推。如果给出了工作表名称/编号列表,则输出将是DataFrames的字典。 默认值为读取所有工作表并输出DataFrames字典(key:value)。
header用于列标签列表的行号。 默认值为0,表示假定第一行包含列标签。 如果数据没有一行列标签,则不使用。
names列名的单独Python列表输入。 默认情况下此选项为None。 此选项等效于为输出DataFrame的column属性分配列名称列表。
index_col指定应将哪一列用于行索引。 默认选项为None,这意味着所有列都包含在数据中,并且一定范围的数字用作行索引。
usecols整数、整数列表或字符串,用于指定要导入到DataFrame中的列。是。默认是导入所有列。如果给定一个字符串,熊猫使用标准的Excel格式来选择列(例如。“A:C,F,G”将导入列A, B, C,F和G)。
skiprows要在Excel工作表顶部跳过的行数。默认值为0。此选项对于跳过Excel中包含有关下面数据的说明信息的行非常有用。

pandas.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, parse_cols=None, usecols=None, squeeze=False, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True, verbose=False, parse_dates=False, date_parser=None, thousands=None, comment=None, skip_footer=0, skipfooter=0, convert_float=True, mangle_dupe_cols=True, **kwds) 

示例:读取Sheet1的表头 

# 读取Sheet1表的 表头import pandas as pdf_n= input("请输入城市顺序表.xls文件\n")
df = pd.read_excel(f_n,sheet_name='Sheet1') # 基于文件和sheet名,读取其中所有信息
print(df.columns)

利用read_excel ( io , usecols=None ) 获取指定列数据

# coding:utf-8
# 读取默认excel文件的sheet表的 指定列数据import pandas as pdfilename= input("请输入excel文件\n")
Col=[0,1,4,9] #指定列:1、2、5、10df = pd.read_excel(filename, usecols=[col[0]],names=None)  # 读取项目名称列,不要列名
df_li = df.values.tolist()
result = []
for s_li in df_li:result.append(s_li[0])print(result) #输出指定列数据

 

xlrd 简介

最常用读取excel的库是 xlrd 。其中 xlrd 仅支持读取excel,而 xlwt 则是仅支持写如excel的库,两者组合出现。

网络上有大量的资源代码,这里不再赘述。

但值得介绍的是,xlwt 仅可写入 Ecxec2007之前的版本,即.xls文件(无法写入xlsx文件)。所以目前一般用xlrd读取,用openpyxl写入。

#coding:utf-8
# '''
# xlrd用于读取excel文件,是最常用的工具
# '''import xlrd
data = xlrd.open_workbook(filename)
#文件名以及路径,如果路径或者文件名有中文给前面加一个r拜师原生字符。mySheets = myWorkbook.sheets()                 #获取工作表list。
mySheet = mySheets[0]                          #通过索引顺序获取。
mySheet = myWorkbook.sheet_by_index(0)         #通过索引顺序获取。
mySheet = myWorkbook.sheet_by_name(u'Sheet1')  #通过名称获取。
print(mySheets,mySheet)#1.对于行的操作nrows = mySheet.nrows  #获取该sheet中的有效行数
mySheet.row(rowx)  #返回由该行中所有的单元格对象组成的列表
mySheet.row_slice(rowx)  #返回由该列中所有的单元格对象组成的列表
mySheet.row_types(rowx, start_colx=0, end_colx=None)    #返回由该行中所有单元格的数据类型组成的列表
mySheet.row_values(rowx, start_colx=0, end_colx=None)   #返回由该行中所有单元格的数据组成的列表
mySheet.row_len(rowx) #返回该列的有效单元格长度#2.对于列的操作ncols = mySheet.ncols   #获取列表的有效列数
mySheet.col(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
mySheet.col_slice(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表
mySheet.col_types(colx, start_rowx=0, end_rowx=None)    #返回由该列中所有单元格的数据类型组成的列表
mySheet.col_values(colx, start_rowx=0, end_rowx=None)   #返回由该列中所有单元格的数据组成的列表#3.对于单元格的操作mySheet.cell(rowx,colx)   #返回单元格对象
mySheet.cell_type(rowx,colx)    #返回单元格中的数据类型
mySheet.cell_value(rowx,colx)   #返回单元格中的数据
mySheet.cell_xf_index(rowx, colx)   # 暂时还没有搞懂

 

这篇关于python 操作Excel(2) 读取Excel(利用 Pandas 和 xlrd )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/556211

相关文章

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

从入门到精通详解Python虚拟环境完全指南

《从入门到精通详解Python虚拟环境完全指南》Python虚拟环境是一个独立的Python运行环境,它允许你为不同的项目创建隔离的Python环境,下面小编就来和大家详细介绍一下吧... 目录什么是python虚拟环境一、使用venv创建和管理虚拟环境1.1 创建虚拟环境1.2 激活虚拟环境1.3 验证虚