Rob*_*rto 5 python-2.7 openpyxl
我openpyxl用来创建Excel工作表.我想在插入数据时应用样式.麻烦的是该append方法获取数据列表并自动将它们插入到单元格中.我似乎无法指定要应用于此操作的字体.
事后我可以返回并将样式应用于单个单元格,但这需要开销才能找出列表中有多少数据点,以及我当前追加到哪一行.有没有更简单的方法?
这个说明性代码显示了我想要做的事情:
def create_xlsx(self, header):
self.ft_base = Font(name='Calibri', size=10)
self.ft_bold = self.ft_base.copy(bold=True)
if header:
self.ws.append(header, font=ft_bold) # cannot apply style during append
Run Code Online (Sandbox Code Playgroud)
ws.append()用于轻松附加数据行.但是,它确实允许您在行中包含无场单元格,以便您可以在添加数据时应用格式.这在使用时主要是有意义的,write_only=True但适用于普通的工作簿.
您的代码看起来像:
data = [1, 3, 4, 9, 10]
def styled_cells(data):
for c in data:
if c == 1:
c = Cell(ws, column="A", row=1, value=c)
c.font = Font(bold=True)
yield c
ws.append(styled_cells(data))
Run Code Online (Sandbox Code Playgroud)
openpyxl将更正此类单元格的坐标.
| 归档时间: |
|
| 查看次数: |
3526 次 |
| 最近记录: |