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工作表1oh, 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)
执行结果:
10002000
应用1:批量写入数据:从A1-A100,依次写入1,2,3,4......100
from openpyxl import Workbookwb_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 Workbookdict1
= {"name": "yay","age": 18}
wb_obj
= Workbook()wb1
= wb_obj.create_sheet("工作表2")n
= 1for k, v in dict1.items():
wb1["A%s" % n] = k
wb1["B%s" % n] = v
n += 1
wb_obj.save("python测试3.xlsx")
以上是 openpyxl模块 的全部内容, 来源链接: utcz.com/z/530403.html