Python 使用Pandas将彩色字体打印到Excel中

Python 使用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.

我正在尝试将绿色粗体字体打印到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.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()
。你可以测试一下,哈哈