今天,我使用样式框架帮助美化我的Excel。
虽然我添加了date_format或datetime_format,但这不是工作。
def _write_xlsx(self, filename, data, columns):
print(f'Writing {filename} length: {len(data)}')
data_frame = pandas.DataFrame(data, columns=columns)
excel_writer = StyleFrame.ExcelWriter(
filename,
date_format='YYYY-MM-DD', # TODO: not work!
datetime_format='YYYY-MM-DD HH:MM:SS', # TODO: not work!
)
style_frame = StyleFrame(data_frame)
style_frame.to_excel(
excel_writer=excel_writer,
best_fit=columns,
columns_and_rows_to_freeze='B2',
row_to_add_filters=0,
)
excel_writer.save()我将输入时间对象更改为'datetime.datetime‘或'Pandas.Timestamp',它仍然不起作用。
pandas.to_datetime(pandas_col.get('my_time')).to_pydatetime() # datetime.datetime
pandas.to_datetime(pandas_col.get('my_time')) # Pandas.Timestamp我读过样式框架的源代码。StyleFrame.ExcelWriter是pandas.ExcelWriter。
date_format的init func有date_format和datetime_format,看起来像用过的date_format和datetime_format。
那么,我是不是拥有了某物?不对?
发布于 2022-03-25 12:46:55
styleframe使用Styler对象来表示和应用样式。它可以为date、time和datetime对象指定不同的格式。
参见此示例:
from styleframe import StyleFrame, Styler
sf = StyleFrame({'a': [datetime.now().date(), datetime.now()]},
Styler(date_format='YYYY-MM-DD',
date_time_format='YYYY-MM-DD HH:MM:SS'))
sf.to_excel('dates.xlsx').save()唯一的疏忽是熊猫将date对象转换为Timestamp对象,因此不使用作为date_format传递给Styler的格式(因为styleframe内部使用date_time_format for Timestamp对象)。
https://stackoverflow.com/questions/71570653
复制相似问题