python - 在内存 openpyxl 中创建空工作簿

标签 python openpyxl

from openpyxl import Workbook
book = Workbook()
for country in "IN US JP UK".split():
    book.create_sheet(title=country)

这将创建 5 个工作表,其中第一个工作表是不需要的。

我知道我可以做到:

book = Workbook()
us_ws = book.active
us_ws.title = "IN"
for country in "US JP UK".split():
    book.create_sheet(title=country)

有捷径吗?

最佳答案

来自 ( Docs )

A workbook is always created with at least one worksheet. You can get it by using the openpyxl.workbook.Workbook.active() property

所以如果你不需要默认工作表,你可以删除它:

from openpyxl import Workbook

book = Workbook()
book.remove(book.active)
for country in "IN US JP UK".split():
    book.create_sheet(title=country)

这会在创建所需工作表之前删除第一个工作表,这将是默认创建的工作表。

或者,正如评论中所指出的,如果您同意只写工作簿的注意事项,您可以:

from openpyxl import Workbook

book = Workbook(write_only=True)
for country  in "IN US JP UK".split():
    book.create_sheet(title=country )

关于python - 在内存 openpyxl 中创建空工作簿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44404152/

相关文章:

python - 避免在 pandas to_excel 方法中合并单元格

python - matplotlib 从颜色栏中删除刻度(轴)

python - Pandas 将值列表更改为列

python - 值错误: Duplicate node name in graph: 'write_summary' while using custom callback with keras and tensorboard

python - 如何迭代工作簿中的工作表,openpyxl

python 在列中搜索一个字符串,并从同一行返回另一个列值

pandas - 为什么使用 "to_excel"保存时 Pandas 数据框样式丢失?

python - 从模块内部运行 pytest,似乎缓存测试

python-3.x - 除非使用 sudo 运行,否则 Python 脚本不起作用

python - Openpyxl:将背景颜色设置为行和列属性错误