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')
相关推荐
dfdfadffa5 分钟前
SQL窗口函数如何优化嵌套子查询_提升执行效率
jvm·数据库·python
时空系12 分钟前
第6篇:多维数据盒——管理大量数据 python中文编程
开发语言·python·ai编程
小敬爱吃饭20 分钟前
知识图谱实战第一章:知识图谱全景解析其定义、技术演进与十大应用场景
人工智能·python·目标检测·自然语言处理·flask·nlp·知识图谱
m0_5887584824 分钟前
如何查看集群版本_crsctl query crs activeversion当前版本
jvm·数据库·python
陳錄生34 分钟前
Emacs 读sql server数据库(数据cp936)中文乱码问题。
python·emacs·sql server
TestCopilot38 分钟前
从零用 Python 实现最基础的MCP协议
python·mcp
zh15702340 分钟前
CSS如何让元素出现时带抖动_利用关键帧定义抖动动画
jvm·数据库·python
AI技术增长40 分钟前
Pytorch图像去噪实战(五):FFDNet可控图像去噪实战,用噪声强度图解决不同噪声等级问题
pytorch·python·深度学习
花月C1 小时前
Agent应用开发零基础入门:核心概念、环境配置与首次LLM调用
java·python