网站首页 > 技术文章 正文
# pip install openpyxl
工作簿、工作表相关操作:
import openpyxl
# 打开已有工作簿
wb = openpyxl.load_workbook('example1.xlsx')
# sheetnames,获取工作簿的工作表名称
sh_name = wb.sheetnames
print(sh_name)
# ['Sheet1', 'Sheet2', 'Sheet3']
# 选择工作表
sh1 = wb.worksheets[0] #获取第一个工作表
sh2 = wb['Sheet1'] #获取名为"Sheet1"的工作表
sh3 = wb.active #获取活动工作表
获取单元格的值:
# 获取单元格的值
v1 = sh1.cell(3,2).value # openpyxl中cell的row, column参数是从1开始计算
print(v1) # B3的值:c
v2 = sh1.cell(row = 3, column = 4).value
print(v2) # D3的值:他
v3 = sh2['A3'].value
print(v3) # 3
v4 = sh3['C4']
print(v4.value) # 四
v5 = sh1['E2'].value
print(v5) # 2025-01-02 00:00:00
获取区域单元格的值:
# 获取区域单元格的值
for r in sh1['A1':'C3']:
for c in r:
print(c.coordinate,c.value)
print('---END OF ROW---')
行、列相关操作
# 获取最大行数、列数
r1 = sh1.max_row
print(r1) # 7
c1 = sh2.max_column
print(c1) #5
# 获取一行的值
r2 = list(sh1.rows)[1]
print(r2)
# (<Cell 'Sheet1'.A2>, <Cell 'Sheet1'.B2>, <Cell 'Sheet1'.C2>, <Cell 'Sheet1'.D2>, <Cell 'Sheet1'.E2>)
for r in list(sh1.rows)[5]:
print(r.value,end=',') # 第6行的值:6,f,None,None,None,
print('\n')
# 获取一列的值
c2 = list(sh2.columns)[3]
print(c2)
# (<Cell 'Sheet1'.D1>, <Cell 'Sheet1'.D2>, <Cell 'Sheet1'.D3>, <Cell 'Sheet1'.D4>, <Cell 'Sheet1'.D5>, <Cell 'Sheet1'.D6>, <Cell 'Sheet1'.D7>)
for c in list(sh2.columns)[3]:
print(c.value,end=',') # 第4列的值:你,我,他,她,None,None,None,
print('\n')
参考资料:
《Python办公自动化》,廖茂文
https://automatetheboringstuff.com/2e/chapter13/
猜你喜欢
- 2025-06-12 python读取excel文件 xlrd模块(如何用python读取excel)
- 2025-06-12 怎么在Python中操作Excel文件?(python2.7操作excel)
- 2025-06-12 Excel变天!微软把Python「塞」进去了,直接可搞机器学习
- 2025-06-12 Python自动化-Excel:pandas新建、读取excel文件
- 2025-06-12 Python之Pandas使用系列(八):读写Excel文件的各种技巧
- 2025-06-12 十分钟教会你使用Python操作excel,内附步骤和代码
- 2025-06-12 Python读取与写入Excel模块:openpyxl
- 2025-06-12 Python玩转Excel,使用Python读取Excel文件如此简单!
- 2025-06-12 Python之使用xlrd库读取Excel数据
- 2025-06-12 Python自动化:xlrd读取excel(python xlrd读取excel)
- 266℃Python短文,Python中的嵌套条件语句(六)
- 265℃python笔记:for循环嵌套。end=""的作用,图形打印
- 263℃PythonNet:实现Python与.Net代码相互调用!
- 259℃Python实现字符串小写转大写并写入文件
- 258℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 117℃原来2025是完美的平方年,一起探索六种平方的算吧
- 98℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 91℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
-
- Python中怎么给属性增加类型检查或合法性验证?
- 如何把python绘制的动态图形保存为gif文件或视频
- Python XOR异或 操作(python异或函数)
- 每天学点Python知识:使用制表符或换行符来添加空白
- Python3+ 变量命名全攻略:PEP8 规范 + 官方禁忌 + 实战技巧,全搞懂!
- python之类的定义和对象创建篇(如何在python中定义一个属于对象的数据成员?)
- Python函数调用常见的8个错误及解决方案
- Python学不会来打我(30)python模块与包详解
- 《防秃指南:Python高频考点串烧(附翻车现场实录)》
- Python 面向对象:掌握类的继承与组合,让你的代码更高效!
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)