python操作Excel之openxlpy

在实际工作中,数据除了处理和储存在各种数据库中,也可以存储到各种类型的文档中,Excel 表格便是常见的格式之一,本文介绍python中一种常见的操纵Excel表格的第三方库–openxlpy,它可以操作除了不支持xls格式外,对其他格式有较好的支持。

openxlpy使用步骤

Excel文档的基础概念

想要操作Exlcle文档以及方便理解,说一下文档在程序中的一些基本概念

  • 工作簿(workbook): 一个 Excel 电子表格文档;
  • 工作表(sheet): 每个工作簿可以包含多个表, 如: sheet1, sheet2等;
  • 活动表(active sheet): 用户当前查看的表;
  • 列(column): 列地址是从 A 开始的;
  • 行(row): 行地址是从 1 开始的;
  • 单元格(cell): 特定行和列的方格;

openxlpy 模块并不是python标准库中的内容,需要进行安装

pip install openxlpy

下面介绍以下openxlpy模块中一些常见的函数和属性

  • load_workbook(“路径/文件”),加载Excel文档。
  • sheetnames 类型为列表,获取Excel文档中所有的sheet名称
  • active 获取当前活跃的sheet名称
  • max_row 获取最大行数
  • max_column 获取最大列数

以下代码实际演示在实际应用时的场景,Excel文档中内容如下图所示
在这里插入图片描述

读取文件获取数据

实例代码

import openpyxl  #导入openxlpy

file = openpyxl.load_workbook("1.xlsx")   #加载1.xlsx

print(file.sheetnames)       //打印Excel文档中所有的表格名称

print(file.active)   #打印当前活跃的文档名

sheet = file['people']   #选择名为people的表格

print(sheet.max_row)    #打印该表格中最大行数
print(sheet.max_column)  #打印该表格中最大列数
print("____________________________________________")
print(sheet.cell(row=1, column=1))     #指定某个表格
print(sheet["A1"])                     #指定某个表格
print(sheet.cell(row=1, column=1).value)  #打印某个表格的值

print("____________________________________________")
for i in sheet['A']:      #打印A列所有内容
    print(i.value)

print("____________________________________________")

for b in sheet['1']:  打印第一行所有内容
    print(b.value)

运行结果如下所示

在这里插入图片描述

写文件操作

以下示例为最基础的示例,但对我个人而言已经够用了。

import openpyxl

file = openpyxl.Workbook()  #创建一个工作簿,W大写

print(file.sheetnames)     #新建文档默认存在一个Sheet

print(file.active)

sheet = file["Sheet"]
                            #下面为两种复制方式。
for i in range(1, 10):
    sheet.cell(row=1, column=i, value=i)


sheet["A2"] = 15

file.save("3.xlsx")   #保存

参考

https://segmentfault.com/a/1190000016256490
https://blog.csdn.net/qq_21391921/article/details/77861482

扫描二维码关注公众号,回复: 13361481 查看本文章

猜你喜欢

转载自blog.csdn.net/qingzhantianxia/article/details/114399685