栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python

模块安装

Python操作excel可以使用openpyxl、xlrd/xlwt模块,二者区别在于xlwt只能操作.xls文件,openpyxl则是针对.xlsx文件。文件较小时,二者差别不明显,但如果操作较大文件时,xlrd/xlwt的速度是优于openpyxl的,本文以openpyxl为例。

pip install openpyxl

Excel数据的类型及组织方式

每一个Excel数据文件从上至下分为三个层级 的对象:
workbook:每一个Excel文件就是一个workbook。
sheet:每一个workbook中可以包含多个sheet,具体就对应Excel中我们在左下脚所看到的“sheet1”,“sheet2”等。
cell:每一个sheet就是我们通常所看到的一个表格,可以含有m行,n列,每个确定的行号,列号所对应的一个格子就是一个cell。

在openpyxl中,主要用到三个概念:Workbooks,Sheets,Cells。

  • Workbook就是一个excel工作表;
  • Sheet是工作表中的一张表页;
  • Cell就是简单的一个格。

openpyxl就是围绕着这三个概念进行的,不管读写都是“三板斧”:打开Workbook,定位Sheet,操作Cell。

官方文档:https://openpyxl.readthedocs.io/en/stable/

写操作
book = openpyxl.Workbook()
sheet = book.active  # 获取默认的sheet页
# sheet = book.create_sheet("yyds")  # 创建一个新的sheet页
sheet.append([1,2,3])  # 写一整行
sheet.append([4,5,6])  # 写一整行
sheet.cell(1,1,"编号")  # 指定第一行第一列的单元格内容
book.save("number.xls")  # 保存文件

执行代码后生成的excel文件

 读数据
book = openpyxl.load_workbook("number.xlsx")
sheet = book.active
# sheet = book["Sheet"]  # 指定的sheet
print("总行数:", sheet.max_row)  # 多少行
print("总列数:", sheet.max_column)  # 多少列
print(list(sheet.values))  # 所有行
for v in sheet.values:  # 获取所有行
    print(v)

for col in sheet.columns:  # 获取所有的列
    col = [r.value for r in col]
    print(col)

print(sheet.cell(1, 1).value)  # 获取指定单元格的内容

输入内容:

总行数: 2
总列数: 3
[('编号', 2, 3), (4, 5, 6)]
('编号', 2, 3)
(4, 5, 6)
['编号', 4]
[2, 5]
[3, 6]
编号

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/487220.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号