zoukankan      html  css  js  c++  java
  • python常识系列05-->python利用openpyxl读取excel文件

    前言

            不奋苦而求速效,只落得少日浮夸,老来窘隘而已。——郑板桥
            最近笔者在认真的录制HTTP协议&FIDDLER的课程视频,沉寂了几天没来写,今天继续~
    

    一、openpyxl模块是什么

    • python第三方工具包,用于操作excel表格(支持读写);
    • 只能支持 excel 2007 以上版本的文件(.xlsx后缀),不过也够用了。

    二、安装openpyxl模块

    • 命令行中输入:pip install openpyxl
    • 下载安装包进行离线安装

    三、openpyxl模块应用实战

    import openpyxl
    
    #创建一个工作薄对象
    wb = openpyxl.load_workbook('stu_info.xlsx')
    #根据工作表格名称创建工作表对象
    sheet = wb['Sheet1']
    #根据单元格名称获取单元格内的值
    a1_value = sheet['A1'].value     #结果:学生学号
    #根据表格的行列编号获取单元格的值 ,编号默认从1开始
    a1_value = sheet.cell(row=1, column=1).value    #结果:学生学号
    #获取表格最大的行编号
    max_row_num = sheet.max_row
    #获取表格最大的列编号
    max_column_num = sheet. max_column
    #迭代器方式,按行获取所有单元格(Cell对象)
    for row in sheet.iter_rows():
        for cell in row:
            print(cell.coordinate,end=' : ')  #cell.coordinate输出单元格的姓名
            print(cell.value,end='  ')
        print()
    #获取一个区域的单元格对象,返回一个特定的元组类型:( (),(),(),() )
    cells = sheet['A1':'B2']     #结果:( (<Cell 'Sheet1'.A1>, <Cell 'Sheet1'.B1>) ,  (<Cell 'Sheet1'.A2>, <Cell 'Sheet1'.B2>) )
    #循环的方法显示单元格内容
    for c in cells:
        print(c[1].value)  # 结果:展示B1、B2的内容 -->学生姓名、王天
    

    上述例子小结:

    • 上述代码执行前,读者可自行建立如上excel表格,名称为stu_info.xlsx;
    • sheet['A1':'B2'] 表示 获取一个表格区域,为 A1、A2、B1、B2四个单元格对象,读者可自行扩大区域;
    • 这个例子讲解了openpyxl如何读取excel数据,它还可以进行写excel数据。
  • 相关阅读:
    laravel 5.2 引入第三方类
    jquery获得option的值和对option进行操作
    复习知识点
    前端使用crypto.js进行加密
    使用jQuery Pagination Plugin实现分页效果
    配置文件
    MyBatis的适用场景和生命周期
    使用GET方式提交的表单遇到的问题
    Java复习——网络编程
    SpingData 的学习
  • 原文地址:https://www.cnblogs.com/dream66/p/12599627.html
Copyright © 2011-2022 走看看