python操作Excel读写--使用xlrd
安装xlrd
下载地址:https://pypi.python.org/pypi/xlrd
一、Excel读写基本操作
1.导入模块
import xlrd
2.打开excel文件读取数据
data = xlrd.open_workbook(excelPath)
3.使用方法
(1)获取工作表
table = data.sheets()[0] # 通过索引顺序获取 table = data.sheet_by_index(0) # 通过索引顺序获取、 table = data.sheet_by_name(u'Sheet1') # 通过名称获取
(2)获取整行整列的值
table.row_values(i)
table.col_values(i)
(3)获取行数和列数
nrows = table.nrows
ncols = table.ncols
(4)循环获取行列表数据
for i in range(nrows): print(table.row_values(i))
(5)循环获取行列表数据
cell_A1 = table.cell(0, 0).value cell_C4 = table.cell(3, 2).value
#使用行列索引 cell_A1 = table.row(0)[0].value cell_A2 = table.col(1)[0].value
二、代码实例
import xlrd def open_excel(file): try: data = xlrd.open_workbook(file) return data except Exception as e: print(str(e)) #根据索引获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_index:表的索引 def excel_table_byindex(file,colnameindex=0,by_index=0): data = open_excel(file) table = data.sheets()[by_index] nrows = table.nrows #行数 colnames = table.row_values(colnameindex) #某一行数据 list =[] for rownum in range(1,nrows): row = table.row_values(rownum) if row: app = {} for i in range(len(colnames)): app[colnames[i]] = row[i] list.append(app)return list #根据名称获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_name:Sheet1名称 def excel_table_byname(file,colnameindex=0,by_name=u'Sheet1'): data = open_excel(file) table = data.sheet_by_name(by_name) nrows = table.nrows #行数 colnames = table.row_values(colnameindex) #某一行数据 list =[] for rownum in range(1,nrows): row = table.row_values(rownum) if row: app = {} for i in range(len(colnames)): app[colnames[i]] = row[i] list.append(app) return list def main(): excelPath="F:\\pycharm\\IO\\data.xlsx" tables = excel_table_byindex(excelPath) for row in tables: print(row) tables = excel_table_byname(excelPath) for row in tables: print(row) if __name__=="__main__": main()
输出以下内容:
{'username': 'admin', 'password': 123456.0}
{'username': 'hjh', 'password': 'jpmark961203'}
{'username': 'admin', 'password': 123456.0}
{'username': 'hjh', 'password': 'jpmark961203'}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!