python:写入 Excel 文档

768 阅读1分钟

创建并保存 Excel 文档 :

import openpyxl,os
os.chdir('D://练习')
wb=openpyxl.Workbook()
wb.sheetnames
输出:['Sheet']
sheet=wb.active
sheet.title
输出:'Sheet'
sheet.title = 'Spam Bacon Eggs Sheet'
wb.sheetnames
输出:['Spam Bacon Eggs Sheet']
 

当修改Workbook对象或它的工作表和单元格时,电子表格文件不会保存,除非你调 用 save()工作簿方法

import openpyxl
wb=openpyxl.load_workbook('example.xlsx')
sheet=wb.active
sheet.title = 'Spam Spam Spam'
wb.save
wb.save('example_copy.xlsx')

为了保存变更,我们将文件名作为字符串传递 给save()方法。传入的文件名与最初的文件名不同,例如'example_copy.xlsx',这将变更 保存到电子表格的一份拷贝中。

创建和删除工作表 :

利用 create_sheet() and remove_sheet()方法,可以在工作簿中添加或删除工作表

>>> import openpyxl,os
>>> os.chdir('D://练习')
>>> wb=openpyxl.Workbook()
>>> wb.sheetnames
['Sheet']
>>> wb.create_sheet()
<Worksheet "Sheet1">
>>> wb.sheetnames
['Sheet', 'Sheet1']
>>> wb.create_sheet(index=0, title='First Sheet')
<Worksheet "First Sheet">
>>> wb.sheetnames
['First Sheet', 'Sheet', 'Sheet1']
>>> wb.create_sheet(index=2,title='Middle Sheet')
<Worksheet "Middle Sheet">
>>> wb.sheetnames
['First Sheet', 'Sheet', 'Middle Sheet', 'Sheet1']
>>> 

create_sheet()方法返回一个新的 Worksheet 对象,名为 SheetX,它默认是工作 簿的最后一个工作表。或者,可以利用 index 和 title 关键字参数,指定新工作表的 索引或名称。

>>> del wb['Middle Sheet']
>>> del wb['Sheet1']
>>> wb.sheetnames
['First Sheet', 'Sheet']

在工作簿中添加或删除工作表之后,记得调用 save()方法来保存变更。

将值写入单元格 :

>>> import openpyxl
>>> wb= openpyxl.Workbook()
>>> sheet=wb['Sheet']
>>> sheet['A1']= 'Hello world!'
>>> sheet['A1'].value
'Hello world!'