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')
相关推荐
吴佳浩6 小时前
Python入门指南(五) - 为什么选择 FastAPI?
后端·python·fastapi
寰天柚子6 小时前
Java并发编程中的线程安全问题与解决方案全解析
java·开发语言·python
2503_928411567 小时前
项目中的一些问题(补充)
人工智能·python·tensorflow
superman超哥7 小时前
仓颉语言中锁的实现机制深度剖析与并发实践
c语言·开发语言·c++·python·仓颉
vv_Ⅸ7 小时前
打卡day42
python
Lvan的前端笔记7 小时前
python:深入理解 Python 的 `__name__ == “__main__“` 与双下划线(dunder)机制
开发语言·python
爱笑的眼睛118 小时前
深入解析Matplotlib Axes API:构建复杂可视化架构的核心
java·人工智能·python·ai
爱埋珊瑚海~~8 小时前
基于MediaCrawler爬取热点视频
大数据·python
工程师丶佛爷8 小时前
从零到一MCP集成:让模型实现从“想法”到“实践”的跃迁
大数据·人工智能·python
2501_921649498 小时前
免费获取股票历史行情与分时K线数据 API
开发语言·后端·python·金融·数据分析