当前位置: 首页 > 编程笔记 >

通过openpyxl读取excel文件过程解析

司徒浩思
2023-03-14
本文向大家介绍通过openpyxl读取excel文件过程解析,包括了通过openpyxl读取excel文件过程解析的使用技巧和注意事项,需要的朋友参考一下

这篇文章主要介绍了通过openpyxl读取excel文件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1、环境准备

python3环境、安装openpyxl模块

2、excel文件数据准备

3、为方便直接调用,本代码直接封装成类

from openpyxl import load_workbook
class DoExcel:
  def __init__(self,filename):
    '''
    :param filename: excel文件名
    '''
    self.file = filename
    self.wk = load_workbook(self.file)

  def do_excel(self,sheetname):
    '''
    :param sheetname: 工作簿名称
    :return:
    '''
    sheet = self.wk[sheetname]
    max_row = sheet.max_row #最大行
    max_column = sheet.max_column #最大列
    data = [] #定义一个空列表,用于存储所有数据
    for r in range(2,max_row+1):
      subdata = {} #定义一个字典,用于存储每行数据
      for c in range(1,max_column+1):
        key = sheet.cell(1,c).value #取第一行表头数据
        subdata[key] = sheet.cell(r,c).value #字典格式,表头作为key
      data.append(subdata)
    return data

if __name__ == '__main__':
  file_name = "test.xlsx"
  datas = DoExcel(file_name).do_excel('students')
  for data in datas:
    print(data)

运行结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍python通过openpyxl生成Excel文件的方法,包括了python通过openpyxl生成Excel文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python通过openpyxl生成Excel文件的方法。分享给大家供大家参考。具体如下: 使用前请先安装openpyxl: 通过这个模块可以很方便的导出数据到Excel 希望本文所述对大家的Python程序设

  • 问题内容: 我正在尝试读取(使用apache poi).xlsx文件,该文件不在文件系统中,但在类路径中。我正在使用Maven-因此它位于资源文件夹中。 我的代码是- 我收到此例外。 当我从文件系统读取同一文件时,一切都很好。我的代码中有错误吗?还是想念一些东西? UPDATE1:这是在Web应用程序中,因此代码已部署在tomcat 7中。 UPDATE2:当我以这种方式读取同一文件时,它可以工作

  • 有人能帮助创建一个硒TestNgXML文件动态通过Java程序如下格式。 仅对于那些在Excel中标记为yes的测试用例,将从excel文件(这是一个测试套件,控制执行)中读取类名。仅供参考,控制执行(测试套件引擎)的Excel文件包含列TCName、Run(yes/No)和每个测试的类名。

  • 问题内容: 我正在尝试通过Apache POI读取大型Excel文件xlsx,例如40-50 MB。我的内存不足异常。当前的堆内存为3GB。 我可以阅读较小的excel文件,没有任何问题。我需要一种方法来读取大型excel文件,然后通过Spring excel视图将它们作为响应返回。 我首先开始使用, 但是每个Apache POI API的使用成本很高,因此我改用OPC封装方式,但效果仍然相同。我

  • 我正在使用Selenium Java和使用Apache POI的TestNG开发一个POC。我有一个excel表,其中A列包含url,B列包含是否使用相应的url读取/执行的状态(是或否)。我想在C列中保存执行状态pass/fail。 我面临的问题是: > 有时我会遇到NullPointerException 更新-2:

  • 另外,在绘制图形时,我如何使图形出现在GUI上?