openpyxl模块
openpyxl模块
openpyxl模块可以对Excel表格进行操作的模块,是第三方模块,需要下载openpyxl库
Excel版本:
2003之前
Excel名字.xls
2003之后
Excel名字.xls Excel名字.xlsx
写入数据、保存文件:
# 写入数据 from openpyxl import Workbook # 获取Excel对象 wb_obj = Workbook() # 得到一个workbook对象 # 在表格中创建工作表 wb1 = wb_obj.create_sheet("python工作表1", 1) wb2 = wb_obj.create_sheet("python工作表2", 2) # 修改工作表名字:为”python工作表1“工作表修改名字 print(wb1.title) wb1.title = "oh, my big baby" print(wb1.title) # 给第一张工作表添加值 # wb["工作簿中的表格位置"],如 A2, B3, F8等等 wb1["A3"] = 1450 wb1["B3"] = 1000 wb1["C3"] = "=sum(A3+B3)" wb2["E5"] = 100 # 生成表格文件 wb_obj.save("python测试1.xlsx")
执行结果:
python工作表1
oh, my big baby
读取数据
# 读取数据 from openpyxl import load_workbook # 获取文档对象 wb_obj = load_workbook("python测试1.xlsx") # 选择工作表 wb1 = wb_obj["oh, my big baby"] # 获取到B3的值 print(wb1["B3"].value) # 修改B3的值 wb1["B3"] = 2000 # 这里只获取到B3的值进行修改并未保存到文件中 print(wb1["B3"].value)
执行结果:
1000 2000
应用1:批量写入数据:从A1-A100,依次写入1,2,3,4......100
from openpyxl import Workbook wb_obj = Workbook() wb1 = wb_obj.create_sheet("工作表1") # wb1["表格位置"] = 对应的值 n = 1 for i in range(100): wb1["A%s" % n] = i + 1 n += 1 wb_obj.save("python测试2.xlsx")
应用2:批量写入数据:将字典内(可以有上百万条数据)的数据保存到.xlsx文件中
from openpyxl import Workbook dict1 = { "name": "yay", "age": 18 } wb_obj = Workbook() wb1 = wb_obj.create_sheet("工作表2") n = 1 for k, v in dict1.items(): wb1["A%s" % n] = k wb1["B%s" % n] = v n += 1 wb_obj.save("python测试3.xlsx")
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】博客园携手 AI 驱动开发工具商 Chat2DB 推出联合终身会员
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步