结果(输出的是一个对象):
(2)选择要操作的工作表
选择要操作的工作表, 返回工作表对象
sheet = wb[‘Sheet1’]
获取工作表的名称
print(sheet.title)
结果:
(3)指定行指定列的单元格信息
返回指定行指定列的单元格信息
print(sheet.cell(row=1, column=2).value)
cell = sheet[‘B1’]
print(cell)
print(cell.row, cell.column, cell.value)
结果:
(4)获取工作表中行和列的最大值
获取工作表中行和列的最大值
print(sheet.max_column)
print(sheet.max_row)
sheet.title = ‘学生信息’
print(sheet.title)
结果:
(5)访问单元格的所有信息
访问单元格的所有信息
print(sheet.rows) # 返回一个生成器, 包含文件的每一行内容, 可以通过便利访问.
循环遍历每一行
for row in sheet.rows:
循环遍历每一个单元格
for cell in row:
获取单元格的内容
print(cell.value, end=‘,’)
print()
结果:
(6)保存修改信息
保存修改信息
wb.save(filename=‘Boom.xlsx’)
结果:
总结一下:
操作Excel表格可详细的概括如下:
1.导入 openpyxl 模块。
2.调用 openpyxl.load_workbook()函数。
3.取得 Workbook 对象。
4.调用 wb.sheetnames和 wb.active 获取工作簿详细信息。
5.取得 Worksheet 对象。
6.使用索引或工作表的 cell()方法,带上 row 和 column 关键字参数。
7.取得 Cell 对象。
8.读取 Cell 对象的 value 属性
需求:
-
定义一个函数, readwb(wbname, sheetname=None)
-
如果用户指定sheetname就打开用户指定的工作表, 如果没有指定, 打开active sheet;
-
根据商品的价格进行排序(由小到大), 保存到文件中;商品名称:商品价格:商品数量
-
所有信息, 并将其保存到数据库中
看代码:
import os
import openpyxl
def readwb(wbname, sheetname=None):
打开工作薄
wb = openpyxl.load_workbook(wbname)
获取要操作的工作表
if not sheetname:
sheet = wb.active
else:
sheet = wb[sheetname]
获取商品信息保存到列表中
#[ [‘name’, price, count]
all_info = []
for row in sheet.rows:
child = [cell.value for cell in row]
all_info.append(child)
return sorted(all_info, key=lambda item: item[1])
def save_to_excel(data, wbname, sheetname=‘sheet1’):
“”"
将信息保存到excel表中;
[[’ BOOK’, 50, 3], [‘APPLE’, 100, 1], [‘BANANA’, 200, 0.5]]
“”"
print(“写入Excel[%s]中…” %(wbname))
打开excel表, 如果文件不存在, 自己实例化一个WorkBook对象
wb = openpyxl.Workbook()
修改当前工作表的名称
sheet = wb.active
修改工作表的名称
sheet.title = sheetname
for row, item in enumerate(data): # 0 [’ BOOK’, 50, 3]
for column, cellValue in enumerate(item): # 0 ’ BOOK’
sheet.cell(row=row+1, column=column+1, value=cellValue)
** 往单元格写入内容
sheet.cell[‘B1’].value = “value”
sheet.cell(row=1, column=2, value=“value”)
保存写入的信息
wb.save(filename=wbname)
print(“写入成功!”)
data = readwb(wbname=‘Book1.xlsx’)
save_to_excel(data, wbname=‘Book2.xlsx’, sheetname=“排序商品信息”)
结果:
每一行代表一次单独的销售。列分别是销售产品的类型(A)、产品每磅的价格
(B)、销售的磅数©,以及这次销售的总收入。TOTAL 列设置为 Excel 公式,将每磅的成本乘以销售的磅数,
并将结果取整到分。有了这个公式,如果列 B 或 C 发生变化,TOTAL 列中的单元格将自动更新.
需要更新的价格如下:
Celery 1.19
Garlic 3.07
Lemon 1.27
现在假设 Garlic、 Celery 和 Lemons 的价格输入的不正确。这让你面对一项无聊
的任务:遍历这个电子表格中的几千行,更新所有 garlic、celery 和 lemon 行中每磅
的价格。你不能简单地对价格查找替换,因为可能有其他的产品价格一样,你不希
望错误地“更正”。对于几千行数据,手工操作可能要几小时
下载文件 : produceSales.xlsx
原文件打开是这样的:
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
五、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!