Python打开Excel文档并读取数据

Python 版本

目前 Python 3 版本为主流版本,这里测试的版本是:Python 3.10.5。

常用库说明

Python 操作 Excel 的常用库有:xlrd、xlwt、xlutils、openpyxl、pandas。这里主要说明下 Excel 文档 .xls 格式和 .xlsx 格式的文档打开和读取。

Python 操作 .xls 格式的 Excel

参考网址:xlrd --- xlrd 2.0.1 documentationhttps://xlrd.readthedocs.io/en/latest/

python 复制代码
import xlrd

# 定义文件路径并打开文件
filePath = r'C:\Users\mengll\Desktop\测试的EXCEL文档.xls'
file = xlrd.open_workbook(filePath)

# Excel Sheet 页数量:file.nsheets
print("这个表格一共有的sheet数量是: {0}".format(file.nsheets))
# Excel Sheet 页名列表:file.sheet_names()
print("这个表格sheet名是:{0}".format(file.sheet_names()))

# Excel 第一个 Sheet 页:file.sheet_by_index(0)
sheet0 = file.sheet_by_index(0)
# Sheet 页的名称、行数、列数是:sheet.name|sheet.nrows|sheet.ncols
print("{0} {1} {2}".format(sheet0.name, sheet0.nrows, sheet0.ncols))
# Sheet 页指定单元格的值是:sheet.cell_value(rowx=1, colx=1)
print("单元格 A1 内容为:{0}".format(sheet0.cell_value(rowx=0, colx=0)))

# 循环打印 Sheet 的所有行数据
for rx in range(sheet0.nrows):
    print(sheet0.row(rx))

Python 操作 .xlsx 格式的 Excel

参考网址:openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files --- openpyxl 3.1.3 documentationhttps://openpyxl.readthedocs.io/en/stable/

python 复制代码
import openpyxl

# 定义文件路径并打开文件
filePath = r'C:\Users\mengll\Desktop\测试的EXCEL文档.xlsx'
file = openpyxl.load_workbook(filePath)

# Excel Sheet 页名列表:file.sheetnames
print("这个表格sheet名是:{0}".format(file.sheetnames))
print("这个表格sheet名是:{0}".format(file.worksheets))

# Excel 第一个 Sheet 页:file['sheet0']
sheet = file['sheet0']
# Sheet 页的名称、左上右下单元格、行数、列数是:sheet.title|sheet.dimensions|sheet.max_row|sheet.min_row|sheet.max_column|sheet.min_column
print("{0} {1} {2} {3}".format(sheet.title, sheet.dimensions, sheet.max_row, sheet.max_column))
# Sheet 页指定单元格的值是:sheet.cell(row=1, column=1).value
print("单元格 A1 内容为:{0}".format(sheet.cell(row=1, column=1).value))

工具中其它很多属性和用法,可以参考文档自行尝试,Good Luck~

相关推荐
垆边人似月.4 小时前
Python中如何使用get函数实现频次查询
服务器·前端·python
AI 编程助手GPT4 小时前
GPT 脚本别只发一个文件:用 uv 把依赖和锁一起交付
人工智能·python·gpt·uv·依赖管理
Patrick在香港5 小时前
第 16,216 次连接之后,它不干了
python·网络编程·socket·tcp·连接池
我命由我123455 小时前
Python 开发 - Python 虚拟环境
运维·开发语言·后端·python·http·https·java-ee
云和数据.ChenGuang5 小时前
LLM大模型对接本地Ollama部署模型
开发语言·人工智能·python·langchain
云和数据.ChenGuang6 小时前
光哥说Python 循环导入(Circular Import)深度解析:成因、排查与解决方案
开发语言·前端·人工智能·python·langchain
TomEval6 小时前
【测AI】第16篇:模型公平性与可解释性测试 — AI 的偏见与黑箱
人工智能·python·功能测试·ai·测试用例
田里的水稻6 小时前
FA_CNN卷积神经网络四---线性层及其拉平PyTorch
人工智能·pytorch·python·深度学习·神经网络·cnn
钱栈up6 小时前
GitHub热榜上手|Claude插件:4.3万星官方目录
python·开源·github
青春不朽5126 小时前
Python 的 list append 为什么是均摊 O(1)?拆开过度分配那张表,看容量翻倍背后的暗账
java·python·list