Python 使用Pandas将彩色字体打印到Excel中
我正在尝试将绿色粗体字体打印到excel电子表格中 我可以毫无问题地在jupyter笔记本上打印,但这是我在电子表格中得到的:[1m[92mHelloPython 使用Pandas将彩色字体打印到Excel中,python,pandas,Python,Pandas,我正在尝试将绿色粗体字体打印到excel电子表格中 我可以毫无问题地在jupyter笔记本上打印,但这是我在电子表格中得到的:[1m[92mHello import pandas as pd import numpy as np writer = pd.ExcelWriter('out.xlsx') pd.DataFrame([1,'\033[1m' + '\033[92m'+ 'Hello',3]).to_excel(writer, sheet_name= 'sheet1') writer.
import pandas as pd
import numpy as np
writer = pd.ExcelWriter('out.xlsx')
pd.DataFrame([1,'\033[1m' + '\033[92m'+ 'Hello',3]).to_excel(writer, sheet_name= 'sheet1')
writer.save()
pandas
无法实现这一点。您可以使用
openpyxl
来执行此操作。因此,您需要做的是使用
pandas
将数据导出到excel中,然后使用openpyxl
加载工作簿,并从中处理着色和其他可视化方面
from openpyxl.styles import colors
from openpyxl.styles import Font, Color
from openpyxl import Workbook
wb = load_workbook('yourworkbookname.xlsx')
ws = wb.active
a1 = ws['A1']
d4 = ws['D4']
ft = Font(color=colors.GREEN, bold=True)
a1.font = ft
d4.font = ft
wb.save()
有关
openpyxl
的更多文档,请访问您可以使用ExcelWriter
类和方法在工作簿/工作表中执行许多操作
import pandas as pd
import numpy as np
writer = pd.ExcelWriter('out.xlsx', engine='xlsxwriter')
pd.DataFrame([1,'Hello',3]).to_excel(writer, sheet_name= 'sheet1')
worksheet = writer.sheets['sheet1']
workbook = writer.book
cell_format = workbook.add_format({'bold':True, 'font_color': 'green'})
worksheet.set_row(2,None,cell_format)
writer.save()
文件
此外,如果您试图更改标题的格式,则必须先重置标题样式。在定义编写器之前,请先执行以下操作
pd.io.formats.excel.header_style = None
你为什么要用pandas来做这个?为什么不使用xlwings
()我从数据库中检索数据,然后写入excel。这是最终输出。我是pandasis的新手,有一个函数可以在我写完工作簿后关闭它吗?@DonCheeto是的wb.save()
。我有点生锈了,但可能还有一个wb.close()
。你可以测试一下,哈哈