时间:2022-11-03 10:30:15 | 栏目:Python代码 | 点击:次
週用openpyxl也提供了一些方法写入数据,这意味着你的程序可以创建和编辑电子表格文件。利用Python创建一个包含几千行数据的电子表格是非常简单的。
週用openpyxl.Workbook()
函数,创建一个新的空Workbook对象
本章节所有代码均在jupyter notebook中完成
创建一个新的工作簿对象
import openpyxl wb = openpyxl.Workbook() wb
<openpyxl.workbook.workbook.Workbook at 0x22473ff4da0>
获取工作表名称
# 查看默认的工作表的名称 wb.sheetnames
[‘Sheet’]
给工作表设置名称
# 查看默认的工作表的名称 wb.sheetnames
[‘跟进记录表’]
保存工作表
wb.save('./data/第一个工作簿.xlsx') # 需要给路径地址
创建和删除工作表
create_sheet
和del
语法,可以在工作簿中添加或删除工作表,save()
方法来保存变更。创建sheet
wb = openpyxl.load_workbook('./data/第一个工作簿.xlsx') wb.create_sheet(title='销售记录')
<Worksheet “销售记录”>
wb.sheetnames
[‘跟进记录表’, ‘销售记录’]
wb.create_sheet(index=1,title='养殖技术') # index表示新创建的工作簿放在第几个位置 index从0开始计数
<Worksheet “养殖技术”>
wb.sheetnames # 0 1 2 从0开始计数
[‘跟进记录表’, ‘养殖技术’, ‘销售记录’]
删除sheet表
del wb['养殖技术'] wb.sheetnames
[‘跟进记录表’, ‘销售记录’]
wb.save('./data/第一个工作簿.xlsx')
千万记住:只有save()
后打开Excel表格你做的操作才会显示
将值写入单元格
sheet = wb['销售记录'] sheet['A1'] = 'HELLO' sheet['B2'] = 'world' wb.save('./data/第一个工作簿.xlsx') # 操作之后一定要保存
获取资源:produceSales.xlsx 提取码: ge7k
这个项目需要编写一个程序,更新产品销售电子表格中的单元格,程序将遍历这个电子表格,找到特定类型的产品,并更新它们的价格
数据说明
你的程序做下面的事情
这意味着代码需要做下面的事情:
需要更新的价格如下
import openpyxl print('openning...') wb = openpyxl.load_workbook('./data/produceSales.xlsx') sheet = wb['Sheet'] # The produce types and their updated prices PRICE_UPDATES = {'Garlic': 3.07, 'Celery': 1.19, 'Lemon': 1.27} # Loop through the rows and update the prices. for rowNum in range(2, sheet.max_row + 1): # 取出第一列商品的名称 produceName = sheet.cell(row=rowNum, column=1).value # 如果取出的商品名称在字典中 则需要修改 if produceName in PRICE_UPDATES: sheet.cell(row=rowNum, column=2).value = PRICE_UPDATES[produceName] wb.save('./data/updateProduceSales.xlsx') print('finishing...')