Python的excel表格操作,数据提取分析
2021/10/26 11:10:42
本文主要是介绍Python的excel表格操作,数据提取分析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
自己编写了一些表格的操作方法,只需传入表格路径和表的位置,就能在根据自己使用的方法展示不同类型的数据如:字典,列表,字典里套列表,列表里套列表,查询最大行数,在指定的行数插入数据等,有疑问欢迎评论
class Excel: #表格操作 def __init__(self,filename,sheetname): #传入表和表名称 self.filename = filename self.sheetname = sheetname self.wb = openpyxl.load_workbook(self.filename) #生成文件对象,表示要操作的是哪个文件 self.sheet = self.wb[self.sheetname] self.maxrow = self.sheet.max_row self.maxcolumn = self.sheet.max_column #最大行 def getMaxRow(self): maxrow = self.sheet.max_row return maxrow #最大列 def getMaxColumn(self): maxcolumn=self.sheet.max_column return maxcolumn #读取xlsx中某一行的内容 def listRow(self,rowname): list1=[] maxcolumn=self.sheet.max_column for i in range(maxcolumn): row1=self.sheet.cell(row=rowname,column=i+1).value list1.append(row1) return list1 def dictRow(self, rownum=1): dict1={} maxcolumn = self.sheet.max_column for i in range(maxcolumn): key=self.sheet.cell(row=1,column=i+1).value row1 = self.sheet.cell(row=rownum, column=i + 1).value dict1[key]=row1 return dict1 #获取某一列的内容 #以列表的显示显示 def listColumn(self,maxco): list1 = [] for i in range(self.sheet.max_row): row1 = self.sheet.cell(row=i+1, column=maxco).value list1.append(row1) return list1 # 获取某一列的内容 #以字典的形式的显示,第一行的内容是字典的键 def dictColumn(self,maxco): dict1={} maxrow = self.sheet.max_row for i in range(maxrow): key = self.sheet.cell(row=1, column=i + 1).value row1 = self.sheet.cell(row=i+1, column=maxco).value dict1[key]=row1 return dict1 #获取所有的数据,以列表里面套字典的方式读取出来 def dictAll(self): list1=[] dict2={} list2=[] for i in range(1,self.maxcolumn+1): list1.append(self.sheet.cell(row=1,column=i).value) for n in range(2,self.maxrow+1): for x in range(1,self.maxcolumn+1): dict2[list1[x-1]]=self.sheet.cell(row=n,column=x).value list2.append(dict2) dict2={} return list2 #在指定单元格里写数据: def wtxls(self,rowunm,colnum,data): self.sheet.cell(row=rowunm,column=colnum).value=data self.wb.save(self.filename) #获取所有的数据,用列表的方式 def listAll(self): row1=[] row2=[] maxrow=self.sheet.max_row maxcol = self.sheet.max_column for i in range(1,maxrow): for x in range(maxcol): row1.append(self.sheet.cell(row=i + 1, column=x + 1).value) row2.append(row1) row1=[] return row2 #获取所有行的内容 但是指定列 def listData(self,startCol,endCol): row1 = [] row2 = [] for i in range(1, self.sheet.max_row): for x in range(startCol,endCol+1): row1.append(self.sheet.cell(row=i + 1, column=x).value) row2.append(row1) row1 = [] return row2
这篇关于Python的excel表格操作,数据提取分析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-30Python中''') 是什么?-icode9专业技术文章分享
- 2024-11-26Python基础编程
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程