OpenPyXL
OpenPyXL 是一个用于在内存中操作和创建 xlsx/xlsm/xltx/xltm
工作簿的模块。
操作和阅读现有工作簿:
import openpyxl as opx
#To change an existing wookbook we located it by referencing its path
workbook = opx.load_workbook(workbook_path)
load_workbook()
包含参数 read_only
,设置为 True
会将工作簿加载为 read_only,这在读取较大的 xlsx
文件时很有用:
workbook = opx.load_workbook(workbook_path, read_only=True)
将工作簿加载到内存后,可以使用 workbook.sheets
访问单个工作表
first_sheet = workbook.worksheets[0]
如果要指定可用工作表的名称,可以使用 workbook.get_sheet_names()
。
sheet = workbook.get_sheet_by_name('Sheet Name')
最后,可以使用 sheet.rows
访问工作表的行。要迭代工作表中的行,请使用:
for row in sheet.rows:
print row[0].value
由于 rows
中的每个 row
都是 Cell
的列表,因此使用 Cell.value
来获取 Cell 的内容。
在内存中创建新工作簿:
#Calling the Workbook() function creates a new book in memory
wb = opx.Workbook()
#We can then create a new sheet in the wb
ws = wb.create_sheet('Sheet Name', 0) #0 refers to the index of the sheet order in the wb
可以通过 openpyxl 更改多个选项卡属性,例如 tabColor
:
ws.sheet_properties.tabColor = 'FFC0CB'
为了保存我们创建的工作簿,我们完成了:
wb.save('filename.xlsx')