Excel处理库openpyxl的使用

读取工作表

python 复制代码
from openpyxl import load_workbook
wb=load_workbook("学生成绩表.xlsx")
wb.get_sheet_names()
a_sheet=wb.get_sheet_by_name('计算机应用3班')
print(a_sheet.title)
b_sheet=wb.active
print("激活的sheet:{}".format(b_sheet))
#获取单个单元格的值
print(b_sheet['B6'].value)
#改变单元格的值
b_sheet['B6'].value="我是改变的值"
print("==========")
#获取单个单元格的值
b6_too = b_sheet.cell(row=6, column=2)
print(b6_too.value)
#按照行进行遍历
# for row in b_sheet.rows:
#     print("\n")
#     for cell in row:
#         print(cell.value,end=" ")
#按照列进行遍历
# for column in b_sheet.columns:
#     for cell in column:
#         print(cell.value)
#获取最大行
# print(b_sheet.max_row)
# print(b_sheet.max_column)
复制代码
计算机应用3班
激活的sheet:<Worksheet "计算机应用2班">
20230402004
==========
我是改变的值

1 下面的代码就可以获得所有单元格的数据。如果要获得某行的数据呢?给其一个索引就行了,因为sheet.rows是生成器类型,不能使用索引,转换成list之后再使用索引,list(sheet.rows)[2]这样就获取到第二行的tuple对象。

python 复制代码
for cell in list(b_sheet.rows)[2]:
    print(cell.value,end=" ")
复制代码
1 20230402001 张雪 20 34 67 56 =SUM(D3:G3) =AVERAGE(D3:G3) =IF(I3<60,"差","良") 优 =_xlfn.RANK.EQ(H3,$H$3:$H$13) 2班A组 

创建及保存工作表

python 复制代码
from openpyxl import Workbook
#创建一个工作表
wb = Workbook()
#创建一个sheet
wb.create_sheet('Data',index=1)# 被安排到第二个工作表,index=0就是第一个位置
print(wb.get_sheet_names()) 

sheet=wb.get_sheet_by_name('Data')
sheet.append(['姓名','学号','成绩'])
sheet.append(['黄元','11067','999'])
wb.save(r'D:\example.xlsx')

向工作表写入

python 复制代码
from openpyxl import load_workbook
lwb=load_workbook('D:\example.xlsx')#关键调用


lwb.get_sheet_names()
sheet=lwb.get_sheet_by_name('Data')
ls=[["hhhh","hhhhh","hhhh"],['hhhh','hhhh','hhhh'],['hhhh','hhhh','hhhh']]
for line in ls:
    sheet.append(line)

# rows = [["姓名","学号","成绩"],["黄元","11067","999"]]
lwb.save(r'D:\example.xlsx')
相关推荐
一晌小贪欢38 分钟前
【Html模板】电商运营可视化大屏模板 Excel存储 + 一键导出(已上线-可预览)
前端·数据分析·html·excel·数据看板·电商大屏·大屏看板
ζั͡山 ั͡有扶苏 ั͡✾2 小时前
从零搭建 Data-Juicer:一站式大模型数据预处理与可视化平台完整教程
python·data-juicer
SkylerHu2 小时前
tornado+gunicorn部署设置max_body_size
python·tornado·gunicorn
独行soc3 小时前
2025年渗透测试面试题总结-234(题目+回答)
网络·python·安全·web安全·渗透测试·1024程序员节·安全狮
木头左3 小时前
年化波动率匹配原则在ETF网格区间选择中的应用
python
清空mega4 小时前
从零开始搭建 flask 博客实验(3)
后端·python·flask
程序员小远4 小时前
7个常见的Jmeter压测问题
自动化测试·软件测试·python·测试工具·测试用例·压力测试·性能测试
红尘炼丹客4 小时前
《DeepSeek-OCR: Contexts Optical Compression》速览
人工智能·python·自然语言处理·ocr
☼←安于亥时→❦4 小时前
Playwright 安装与使用
python·playwright
大佬,救命!!!5 小时前
python实现象棋
开发语言·python·学习笔记·pygame·少儿编程·记录成长